From bd418a38359c1993725933b28d3c8ad2cb708b3e Mon Sep 17 00:00:00 2001 From: Giovanniricotta2002 <115021221+Giovanniricotta2002@users.noreply.github.com> Date: Wed, 26 Aug 2026 14:10:10 +0200 Subject: [PATCH] Revert "V2" --- .gitignore | 10 +- .vscode/settings.json | 4 - AUDIT_ACTUEL.md | 279 ------ AUDIT_V1.md | 187 ---- build.gradle | 106 +-- gradle.properties | 14 +- .../Jade-1.20.1-Forge-11.12.2.jar.disabled | Bin 0 -> 547818 bytes run/schematics/reactor.nbt | Bin 1305 -> 0 bytes run/schematics/reactor9x9.nbt | Bin 3029 -> 0 bytes run/schematics/reactor_t1.nbt | Bin 935 -> 0 bytes run/schematics/reactor_t1_ponder.nbt | Bin 1442 -> 0 bytes run/schematics/reactor_t2.nbt | Bin 1785 -> 0 bytes run/schematics/reactor_t2_ponder.nbt | Bin 2346 -> 0 bytes run/schematics/reactor_t3.nbt | Bin 3230 -> 0 bytes run/schematics/reactor_t3_ponder.nbt | Bin 3700 -> 0 bytes run/schematics/reactorhdsbquifu.nbt | Bin 1038 -> 0 bytes run/schematics/setup.nbt | Bin 1296 -> 0 bytes run/schematics/testalarm.nbt | Bin 1287 -> 0 bytes .../09bd1f7b209874b6c29086df91c49669495dd477 | 2 - .../15812fa7bc190aa8f0a8644088c7ff563925e506 | 17 +- .../3c9854c256b4d84dd9b4b92d1a03ceb45298124f | 542 +++++------ .../708b1206ce73e235f43eb2a5fd72b93671cfba4e | 6 +- .../9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e | 26 +- .../abc32a97b4e744838610c53dbbbaaf9f7d29a557 | 38 +- .../fed443662143001aeb5341375f6f5ef31d10baea | 27 +- .../blockstates/deepslate_nitrate_ore.json | 7 - .../blockstates/deepslate_thorium_ore.json | 7 - .../blockstates/nitrate_ore.json | 7 - .../createnuclear/blockstates/nitrogen.json | 7 - .../blockstates/raw_thorium_block.json | 7 - .../blockstates/reactor_alarm.json | 7 - .../blockstates/reactor_controller.json | 62 +- .../blockstates/reactor_fluid_input.json | 26 - .../blockstates/reactor_input.json | 19 + .../blockstates/reactor_rod_input.json | 26 - .../createnuclear/blockstates/thorium.json | 7 - .../blockstates/thorium_block.json | 7 - .../blockstates/thorium_ore.json | 7 - .../assets/createnuclear/lang/en_ud.json | 336 ++----- .../assets/createnuclear/lang/en_us.json | 26 +- .../models/block/deepslate_nitrate_ore.json | 6 - .../models/block/deepslate_thorium_ore.json | 6 - .../models/block/nitrate_ore.json | 6 - .../createnuclear/models/block/nitrogen.json | 5 - .../models/block/raw_thorium_block.json | 6 - .../models/block/reactor/controller/off.json | 7 - .../models/block/reactor/controller/on.json | 7 - .../block/reactor/controller/standby.json | 7 - .../models/block/reactor_alarm.json | 6 - .../createnuclear/models/block/thorium.json | 5 - .../models/block/thorium_block.json | 6 - .../models/block/thorium_ore.json | 6 - ..._bucket.json => anti_radiation_boots.json} | 2 +- .../item/biome_irradiation_extractor.json | 32 - .../biome_irradiation_extractor/full.json | 6 - .../biome_irradiation_extractor/half.json | 6 - .../biome_irradiation_extractor/quarter.json | 6 - .../three_quarters.json | 6 - .../item/black_anti_radiation_chestplate.json | 6 + .../item/black_anti_radiation_helmet.json | 6 + .../item/black_anti_radiation_leggings.json | 6 + .../item/blue_anti_radiation_chestplate.json | 6 + .../item/blue_anti_radiation_helmet.json | 6 + .../item/blue_anti_radiation_leggings.json | 6 + .../item/brown_anti_radiation_chestplate.json | 6 + .../item/brown_anti_radiation_helmet.json | 6 + .../item/brown_anti_radiation_leggings.json | 6 + .../colored/black_anti_radiation_boots.json | 6 - .../black_anti_radiation_chestplate.json | 6 - .../colored/black_anti_radiation_helmet.json | 7 - .../black_anti_radiation_leggings.json | 6 - .../colored/blue_anti_radiation_boots.json | 6 - .../blue_anti_radiation_chestplate.json | 6 - .../colored/blue_anti_radiation_helmet.json | 7 - .../colored/blue_anti_radiation_leggings.json | 6 - .../colored/brown_anti_radiation_boots.json | 6 - .../brown_anti_radiation_chestplate.json | 6 - .../colored/brown_anti_radiation_helmet.json | 7 - .../brown_anti_radiation_leggings.json | 6 - .../colored/cyan_anti_radiation_boots.json | 6 - .../cyan_anti_radiation_chestplate.json | 6 - .../colored/cyan_anti_radiation_helmet.json | 7 - .../colored/cyan_anti_radiation_leggings.json | 6 - .../colored/gray_anti_radiation_boots.json | 6 - .../gray_anti_radiation_chestplate.json | 6 - .../colored/gray_anti_radiation_helmet.json | 7 - .../colored/gray_anti_radiation_leggings.json | 6 - .../colored/green_anti_radiation_boots.json | 6 - .../green_anti_radiation_chestplate.json | 6 - .../colored/green_anti_radiation_helmet.json | 7 - .../green_anti_radiation_leggings.json | 6 - .../light_blue_anti_radiation_boots.json | 6 - .../light_blue_anti_radiation_chestplate.json | 6 - .../light_blue_anti_radiation_helmet.json | 7 - .../light_blue_anti_radiation_leggings.json | 6 - .../light_gray_anti_radiation_boots.json | 6 - .../light_gray_anti_radiation_chestplate.json | 6 - .../light_gray_anti_radiation_helmet.json | 7 - .../light_gray_anti_radiation_leggings.json | 6 - .../colored/lime_anti_radiation_boots.json | 6 - .../lime_anti_radiation_chestplate.json | 6 - .../colored/lime_anti_radiation_helmet.json | 7 - .../colored/lime_anti_radiation_leggings.json | 6 - .../colored/magenta_anti_radiation_boots.json | 6 - .../magenta_anti_radiation_chestplate.json | 6 - .../magenta_anti_radiation_helmet.json | 7 - .../magenta_anti_radiation_leggings.json | 6 - .../colored/orange_anti_radiation_boots.json | 6 - .../orange_anti_radiation_chestplate.json | 6 - .../colored/orange_anti_radiation_helmet.json | 7 - .../orange_anti_radiation_leggings.json | 6 - .../colored/pink_anti_radiation_boots.json | 6 - .../pink_anti_radiation_chestplate.json | 6 - .../colored/pink_anti_radiation_helmet.json | 7 - .../colored/pink_anti_radiation_leggings.json | 6 - .../colored/purple_anti_radiation_boots.json | 6 - .../purple_anti_radiation_chestplate.json | 6 - .../colored/purple_anti_radiation_helmet.json | 7 - .../purple_anti_radiation_leggings.json | 6 - .../colored/red_anti_radiation_boots.json | 6 - .../red_anti_radiation_chestplate.json | 6 - .../colored/red_anti_radiation_helmet.json | 7 - .../colored/red_anti_radiation_leggings.json | 6 - .../colored/white_anti_radiation_boots.json | 6 - .../white_anti_radiation_chestplate.json | 6 - .../colored/white_anti_radiation_helmet.json | 7 - .../white_anti_radiation_leggings.json | 6 - .../colored/yellow_anti_radiation_boots.json | 6 - .../yellow_anti_radiation_chestplate.json | 6 - .../colored/yellow_anti_radiation_helmet.json | 7 - .../yellow_anti_radiation_leggings.json | 6 - .../item/cooled_nitrogen_concentrate.json | 6 - .../item/cyan_anti_radiation_chestplate.json | 6 + .../item/cyan_anti_radiation_helmet.json | 6 + .../item/cyan_anti_radiation_leggings.json | 6 + .../models/item/deepslate_nitrate_ore.json | 3 - .../models/item/deepslate_thorium_ore.json | 3 - .../item/default_anti_radiation_boots.json | 104 --- .../default_anti_radiation_chestplate.json | 104 --- .../item/default_anti_radiation_helmet.json | 104 --- .../item/default_anti_radiation_leggings.json | 104 --- .../item/gray_anti_radiation_chestplate.json | 6 + .../item/gray_anti_radiation_helmet.json | 6 + .../item/gray_anti_radiation_leggings.json | 6 + .../item/green_anti_radiation_chestplate.json | 6 + .../item/green_anti_radiation_helmet.json | 6 + .../item/green_anti_radiation_leggings.json | 6 + .../light_blue_anti_radiation_chestplate.json | 6 + .../light_blue_anti_radiation_helmet.json | 6 + .../light_blue_anti_radiation_leggings.json | 6 + .../light_gray_anti_radiation_chestplate.json | 6 + .../light_gray_anti_radiation_helmet.json | 6 + .../light_gray_anti_radiation_leggings.json | 6 + .../item/lime_anti_radiation_chestplate.json | 6 + .../item/lime_anti_radiation_helmet.json | 6 + .../item/lime_anti_radiation_leggings.json | 6 + .../magenta_anti_radiation_chestplate.json | 6 + .../item/magenta_anti_radiation_helmet.json | 6 + .../item/magenta_anti_radiation_leggings.json | 6 + .../createnuclear/models/item/nitrate.json | 6 - .../models/item/nitrate_ore.json | 3 - .../models/item/nitrogen_concentrate.json | 6 - .../orange_anti_radiation_chestplate.json | 6 + .../item/orange_anti_radiation_helmet.json | 6 + .../item/orange_anti_radiation_leggings.json | 6 + .../item/pink_anti_radiation_chestplate.json | 6 + .../item/pink_anti_radiation_helmet.json | 6 + .../item/pink_anti_radiation_leggings.json | 6 + .../purple_anti_radiation_chestplate.json | 6 + .../item/purple_anti_radiation_helmet.json | 6 + .../item/purple_anti_radiation_leggings.json | 6 + .../models/item/raw_thorium.json | 6 - .../models/item/raw_thorium_block.json | 3 - .../models/item/reactor_alarm.json | 3 - .../models/item/reactor_fluid_input.json | 3 - .../models/item/reactor_input.json | 3 + .../models/item/reactor_rod_input.json | 3 - .../item/red_anti_radiation_chestplate.json | 6 + .../item/red_anti_radiation_helmet.json | 6 + .../item/red_anti_radiation_leggings.json | 6 + .../models/item/reinforced_glass_bottle.json | 6 - .../models/item/thorium_block.json | 3 - .../models/item/thorium_bucket.json | 6 - .../models/item/thorium_dust.json | 6 - .../models/item/thorium_ingot.json | 6 - .../models/item/thorium_nugget.json | 6 - .../models/item/thorium_ore.json | 3 - .../models/item/thorium_rod.json | 6 - .../item/white_anti_radiation_chestplate.json | 6 + .../item/white_anti_radiation_helmet.json | 6 + .../item/white_anti_radiation_leggings.json | 6 + .../yellow_anti_radiation_chestplate.json | 6 + .../item/yellow_anti_radiation_helmet.json | 6 + .../item/yellow_anti_radiation_leggings.json | 6 + .../assets/createnuclear/sounds.json | 164 ---- .../advancements/absolute_zero.json | 39 - .../advancements/anti_radiation_armor.json | 4 +- .../advancements/automatic_uranium.json | 2 +- .../advancements/avoiding_cancer.json | 64 -- .../advancements/chemistry_101.json | 39 - .../createnuclear/advancements/chill_out.json | 39 - .../craft_enriching_campfire.json | 46 - .../advancements/crunchy_uranium.json | 37 - .../advancements/cryogenic_baptism.json | 31 - .../dye_anti_radiation_armor.json | 38 +- .../advancements/fueling_the_reactor.json | 39 - .../full_anti_radiation_armor.json | 47 + .../advancements/getting_concentrated.json | 39 - .../advancements/no_time_to_die.json | 31 - .../advancements/raw_thorium.json | 39 - .../advancements/reactor_cooler.json | 2 +- .../advancements/reactor_frame.json | 2 +- ...ng_the_reactor.json => reactor_input.json} | 8 +- ...limited_power.json => reactor_output.json} | 6 +- .../crafting/reinforced_glass_bottle.json | 35 - .../items/armors/anti_radiation_boots.json} | 4 +- .../black_anti_radiation_chestplate.json | 33 + .../armors/black_anti_radiation_helmet.json | 33 + .../armors/black_anti_radiation_leggings.json | 33 + .../blue_anti_radiation_chestplate.json | 33 + .../armors/blue_anti_radiation_helmet.json} | 4 +- ...json => blue_anti_radiation_leggings.json} | 4 +- .../brown_anti_radiation_chestplate.json | 33 + .../armors/brown_anti_radiation_helmet.json | 33 + .../armors/brown_anti_radiation_leggings.json | 33 + .../cyan_anti_radiation_chestplate.json | 33 + .../armors/cyan_anti_radiation_helmet.json} | 4 +- .../armors/cyan_anti_radiation_leggings.json | 33 + .../gray_anti_radiation_chestplate.json | 33 + .../armors/gray_anti_radiation_helmet.json | 33 + .../armors/gray_anti_radiation_leggings.json | 33 + .../green_anti_radiation_chestplate.json | 33 + .../armors/green_anti_radiation_helmet.json | 33 + .../armors/green_anti_radiation_leggings.json | 33 + .../light_blue_anti_radiation_chestplate.json | 33 + .../light_blue_anti_radiation_helmet.json | 33 + .../light_blue_anti_radiation_leggings.json | 33 + .../light_gray_anti_radiation_chestplate.json | 33 + .../light_gray_anti_radiation_helmet.json | 33 + .../light_gray_anti_radiation_leggings.json | 33 + .../lime_anti_radiation_chestplate.json | 33 + .../armors/lime_anti_radiation_helmet.json | 33 + .../armors/lime_anti_radiation_leggings.json | 33 + ...=> magenta_anti_radiation_chestplate.json} | 4 +- ...son => magenta_anti_radiation_helmet.json} | 4 +- ...n => magenta_anti_radiation_leggings.json} | 4 +- .../orange_anti_radiation_chestplate.json | 33 + .../armors/orange_anti_radiation_helmet.json | 33 + .../orange_anti_radiation_leggings.json | 33 + .../pink_anti_radiation_chestplate.json | 33 + .../armors/pink_anti_radiation_helmet.json | 33 + .../armors/pink_anti_radiation_leggings.json | 33 + .../purple_anti_radiation_chestplate.json | 33 + .../armors/purple_anti_radiation_helmet.json | 33 + .../purple_anti_radiation_leggings.json | 33 + .../armors/red_anti_radiation_chestplate.json | 33 + .../armors/red_anti_radiation_helmet.json} | 4 +- .../armors/red_anti_radiation_leggings.json | 33 + .../white_anti_radiation_chestplate.json | 33 + .../armors/white_anti_radiation_helmet.json | 33 + .../armors/white_anti_radiation_leggings.json | 33 + .../yellow_anti_radiation_chestplate.json | 33 + .../armors/yellow_anti_radiation_helmet.json | 33 + .../yellow_anti_radiation_leggings.json | 33 + .../default_anti_radiation_boots_gray.json | 33 - .../default_anti_radiation_boots_green.json | 33 - ...fault_anti_radiation_boots_light_blue.json | 33 - ...fault_anti_radiation_boots_light_gray.json | 33 - .../default_anti_radiation_boots_lime.json | 33 - .../default_anti_radiation_boots_magenta.json | 33 - .../default_anti_radiation_boots_orange.json | 33 - .../default_anti_radiation_boots_pink.json | 33 - .../default_anti_radiation_boots_purple.json | 33 - .../default_anti_radiation_boots_red.json | 33 - .../default_anti_radiation_boots_white.json | 33 - .../default_anti_radiation_boots_yellow.json | 33 - ...fault_anti_radiation_chestplate_black.json | 33 - ...efault_anti_radiation_chestplate_blue.json | 33 - ...fault_anti_radiation_chestplate_brown.json | 33 - ...efault_anti_radiation_chestplate_cyan.json | 33 - ...efault_anti_radiation_chestplate_gray.json | 33 - ...fault_anti_radiation_chestplate_green.json | 33 - ..._anti_radiation_chestplate_light_blue.json | 33 - ..._anti_radiation_chestplate_light_gray.json | 33 - ...efault_anti_radiation_chestplate_lime.json | 33 - ...ult_anti_radiation_chestplate_magenta.json | 33 - ...ault_anti_radiation_chestplate_orange.json | 33 - ...efault_anti_radiation_chestplate_pink.json | 33 - ...ault_anti_radiation_chestplate_purple.json | 33 - ...default_anti_radiation_chestplate_red.json | 33 - ...fault_anti_radiation_chestplate_white.json | 33 - ...ault_anti_radiation_chestplate_yellow.json | 33 - .../default_anti_radiation_helmet_black.json | 33 - .../default_anti_radiation_helmet_blue.json | 33 - .../default_anti_radiation_helmet_brown.json | 33 - .../default_anti_radiation_helmet_cyan.json | 33 - .../default_anti_radiation_helmet_gray.json | 33 - .../default_anti_radiation_helmet_green.json | 33 - ...ault_anti_radiation_helmet_light_blue.json | 33 - ...ault_anti_radiation_helmet_light_gray.json | 33 - .../default_anti_radiation_helmet_lime.json | 33 - ...default_anti_radiation_helmet_magenta.json | 33 - .../default_anti_radiation_helmet_orange.json | 33 - .../default_anti_radiation_helmet_pink.json | 33 - .../default_anti_radiation_helmet_purple.json | 33 - .../default_anti_radiation_helmet_red.json | 33 - .../default_anti_radiation_helmet_white.json | 33 - .../default_anti_radiation_helmet_yellow.json | 33 - ...default_anti_radiation_leggings_black.json | 33 - .../default_anti_radiation_leggings_blue.json | 33 - ...default_anti_radiation_leggings_brown.json | 33 - .../default_anti_radiation_leggings_cyan.json | 33 - .../default_anti_radiation_leggings_gray.json | 33 - ...default_anti_radiation_leggings_green.json | 33 - ...lt_anti_radiation_leggings_light_blue.json | 33 - ...lt_anti_radiation_leggings_light_gray.json | 33 - .../default_anti_radiation_leggings_lime.json | 33 - ...fault_anti_radiation_leggings_magenta.json | 33 - ...efault_anti_radiation_leggings_orange.json | 33 - .../default_anti_radiation_leggings_pink.json | 33 - ...efault_anti_radiation_leggings_purple.json | 33 - .../default_anti_radiation_leggings_red.json | 33 - ...default_anti_radiation_leggings_white.json | 33 - ...efault_anti_radiation_leggings_yellow.json | 33 - .../crafting/raw/raw_thorium_block.json | 33 - .../blasting/lead_ingot_for_lead_ore.json | 2 +- ..._concentrate_for_nitrogen_concentrate.json | 35 - .../blasting/raw_uranium_for_uranium_ore.json | 2 +- .../crafting/biome_irradiation_extractor.json | 35 - .../raw_thorium_from_decompacting.json | 33 - .../thorium_block_from_compacting.json | 35 - .../thorium_ingot_from_compacting.json | 35 - .../thorium_ingot_from_decompacting.json | 33 - .../thorium_nugget_from_decompacting.json | 33 - .../smelting/lead_ingot_for_lead_ore.json | 2 +- ..._concentrate_for_nitrogen_concentrate.json | 35 - .../smelting/raw_uranium_for_uranium_ore.json | 2 +- .../data/createnuclear/advancements/root.json | 2 +- .../advancements/silence_the_core.json | 31 - .../data/createnuclear/advancements/t1.json | 31 - .../data/createnuclear/advancements/t2.json | 31 - .../data/createnuclear/advancements/t3.json | 31 - .../advancements/thorium_dust.json | 39 - .../advancements/thorium_ingot.json | 39 - .../advancements/thorium_liquid.json | 39 - .../advancements/thorium_rod.json | 39 - .../createnuclear/fluids/type/fallback.json | 5 - .../createnuclear/fluids/type/nitrogen.json | 5 - .../createnuclear/fluids/type/water.json | 5 - .../createnuclear/rods/type/fallback.json | 7 - .../damage_type/fan_radiation.json | 5 - .../createnuclear/damage_type/radiation.json | 5 - .../forge/biome_modifier/nitrate_ore.json | 6 - .../forge/biome_modifier/thorium_ore.json | 6 - .../blocks/deepslate_lead_ore.json | 16 +- .../blocks/deepslate_nitrate_ore.json | 50 -- .../blocks/deepslate_thorium_ore.json | 62 -- .../blocks/deepslate_uranium_ore.json | 16 +- .../loot_tables/blocks/lead_ore.json | 16 +- .../loot_tables/blocks/nitrate_ore.json | 50 -- .../loot_tables/blocks/raw_thorium_block.json | 21 - .../loot_tables/blocks/reactor_alarm.json | 21 - .../blocks/reactor_fluid_input.json | 21 - ...{thorium_block.json => reactor_input.json} | 4 +- .../loot_tables/blocks/reactor_rod_input.json | 21 - .../loot_tables/blocks/thorium_ore.json | 62 -- .../loot_tables/blocks/uranium_ore.json | 16 +- .../loot_tables/entities/irradiated_cow.json | 4 - .../blasting/lead_ingot_for_lead_ore.json | 2 +- ..._concentrate_for_nitrogen_concentrate.json | 10 - .../blasting/raw_uranium_for_uranium_ore.json | 2 +- .../thorium_fluid_to_thorium_ingot.json | 14 - .../crafting/biome_irradiation_extractor.json | 22 - ...n_boots.json => anti_radiation_boots.json} | 4 +- .../black_anti_radiation_chestplate.json | 24 + .../armors/black_anti_radiation_helmet.json | 23 + .../armors/black_anti_radiation_leggings.json | 21 + .../blue_anti_radiation_chestplate.json | 24 + .../armors/blue_anti_radiation_helmet.json | 23 + .../armors/blue_anti_radiation_leggings.json | 21 + .../brown_anti_radiation_chestplate.json | 24 + .../armors/brown_anti_radiation_helmet.json | 23 + .../armors/brown_anti_radiation_leggings.json | 21 + .../cyan_anti_radiation_chestplate.json | 24 + .../armors/cyan_anti_radiation_helmet.json | 23 + .../armors/cyan_anti_radiation_leggings.json | 21 + .../gray_anti_radiation_chestplate.json | 24 + .../armors/gray_anti_radiation_helmet.json | 23 + .../armors/gray_anti_radiation_leggings.json | 21 + .../green_anti_radiation_chestplate.json | 24 + .../armors/green_anti_radiation_helmet.json | 23 + .../armors/green_anti_radiation_leggings.json | 21 + .../light_blue_anti_radiation_chestplate.json | 24 + .../light_blue_anti_radiation_helmet.json | 23 + .../light_blue_anti_radiation_leggings.json | 21 + .../light_gray_anti_radiation_chestplate.json | 24 + .../light_gray_anti_radiation_helmet.json | 23 + .../light_gray_anti_radiation_leggings.json | 21 + .../lime_anti_radiation_chestplate.json | 24 + .../armors/lime_anti_radiation_helmet.json | 23 + .../armors/lime_anti_radiation_leggings.json | 21 + .../magenta_anti_radiation_chestplate.json | 24 + .../armors/magenta_anti_radiation_helmet.json | 23 + .../magenta_anti_radiation_leggings.json | 21 + .../orange_anti_radiation_chestplate.json | 24 + .../armors/orange_anti_radiation_helmet.json | 23 + .../orange_anti_radiation_leggings.json | 21 + .../pink_anti_radiation_chestplate.json | 24 + .../armors/pink_anti_radiation_helmet.json | 23 + .../armors/pink_anti_radiation_leggings.json | 21 + .../purple_anti_radiation_chestplate.json | 24 + .../armors/purple_anti_radiation_helmet.json | 23 + .../purple_anti_radiation_leggings.json | 21 + ...son => red_anti_radiation_chestplate.json} | 4 +- ...et.json => red_anti_radiation_helmet.json} | 4 +- ....json => red_anti_radiation_leggings.json} | 4 +- .../white_anti_radiation_chestplate.json | 24 + .../armors/white_anti_radiation_helmet.json | 23 + .../armors/white_anti_radiation_leggings.json | 21 + .../yellow_anti_radiation_chestplate.json | 24 + .../armors/yellow_anti_radiation_helmet.json | 23 + .../yellow_anti_radiation_leggings.json | 21 + .../crafting/raw/raw_thorium_block.json | 18 - .../raw_thorium_from_decompacting.json | 13 - .../crafting/reinforced_glass_bottle.json | 18 - .../thorium_block_from_compacting.json | 18 - .../thorium_ingot_from_compacting.json | 18 - .../thorium_ingot_from_decompacting.json | 13 - .../thorium_nugget_from_decompacting.json | 13 - .../recipes/crushing/nitrate.json | 19 - .../recipes/crushing/raw_thorium.json | 18 - .../recipes/crushing/raw_thorium_block.json | 20 - .../recipes/crushing/raw_uranium_block.json | 15 + ...ut_from_fluid_pipe_and_reactor_casing.json | 16 - ...input_from_hopper_and_reactor_casing.json} | 4 +- ..._output_from_shaft_and_reactor_casing.json | 2 +- .../mechanical_crafting/reactor_alarm.json | 28 - .../mechanical_crafting/reactor_frame.json | 2 +- .../mechanical_crafting/thorium_rod.json | 19 - .../recipes/mixing/liquid_nitrogen.json | 18 - .../recipes/mixing/thorium_fluid.json | 15 - .../recipes/pressing/graphene.json | 2 +- .../recipes/shapeless/cloth/black_cloth.json | 50 +- .../recipes/shapeless/cloth/blue_cloth.json | 50 +- .../recipes/shapeless/cloth/brown_cloth.json | 50 +- .../recipes/shapeless/cloth/cyan_cloth.json | 50 +- .../recipes/shapeless/cloth/gray_cloth.json | 50 +- .../recipes/shapeless/cloth/green_cloth.json | 50 +- .../shapeless/cloth/light_blue_cloth.json | 50 +- .../shapeless/cloth/light_gray_cloth.json | 50 +- .../recipes/shapeless/cloth/lime_cloth.json | 50 +- .../shapeless/cloth/magenta_cloth.json | 50 +- .../recipes/shapeless/cloth/orange_cloth.json | 50 +- .../recipes/shapeless/cloth/pink_cloth.json | 50 +- .../recipes/shapeless/cloth/purple_cloth.json | 50 +- .../recipes/shapeless/cloth/red_cloth.json | 50 +- .../recipes/shapeless/cloth/white_cloth.json | 50 +- .../recipes/shapeless/cloth/yellow_cloth.json | 50 +- .../smelting/lead_ingot_for_lead_ore.json | 2 +- ..._concentrate_for_nitrogen_concentrate.json | 10 - .../smelting/raw_uranium_for_uranium_ore.json | 2 +- .../default_anti_radiation_boots_black.json | 13 - .../default_anti_radiation_boots_blue.json | 13 - .../default_anti_radiation_boots_brown.json | 13 - .../default_anti_radiation_boots_cyan.json | 13 - .../default_anti_radiation_boots_gray.json | 13 - .../default_anti_radiation_boots_green.json | 13 - ...fault_anti_radiation_boots_light_blue.json | 13 - ...fault_anti_radiation_boots_light_gray.json | 13 - .../default_anti_radiation_boots_lime.json | 13 - .../default_anti_radiation_boots_magenta.json | 13 - .../default_anti_radiation_boots_orange.json | 13 - .../default_anti_radiation_boots_pink.json | 13 - .../default_anti_radiation_boots_purple.json | 13 - .../default_anti_radiation_boots_red.json | 13 - .../default_anti_radiation_boots_white.json | 13 - .../default_anti_radiation_boots_yellow.json | 13 - ...fault_anti_radiation_chestplate_black.json | 13 - ...efault_anti_radiation_chestplate_blue.json | 13 - ...fault_anti_radiation_chestplate_brown.json | 13 - ...efault_anti_radiation_chestplate_cyan.json | 13 - ...efault_anti_radiation_chestplate_gray.json | 13 - ...fault_anti_radiation_chestplate_green.json | 13 - ..._anti_radiation_chestplate_light_blue.json | 13 - ..._anti_radiation_chestplate_light_gray.json | 13 - ...efault_anti_radiation_chestplate_lime.json | 13 - ...ult_anti_radiation_chestplate_magenta.json | 13 - ...ault_anti_radiation_chestplate_orange.json | 13 - ...efault_anti_radiation_chestplate_pink.json | 13 - ...ault_anti_radiation_chestplate_purple.json | 13 - ...default_anti_radiation_chestplate_red.json | 13 - ...fault_anti_radiation_chestplate_white.json | 13 - ...ault_anti_radiation_chestplate_yellow.json | 13 - .../default_anti_radiation_helmet_black.json | 13 - .../default_anti_radiation_helmet_blue.json | 13 - .../default_anti_radiation_helmet_brown.json | 13 - .../default_anti_radiation_helmet_cyan.json | 13 - .../default_anti_radiation_helmet_gray.json | 13 - .../default_anti_radiation_helmet_green.json | 13 - ...ault_anti_radiation_helmet_light_blue.json | 13 - ...ault_anti_radiation_helmet_light_gray.json | 13 - .../default_anti_radiation_helmet_lime.json | 13 - ...default_anti_radiation_helmet_magenta.json | 13 - .../default_anti_radiation_helmet_orange.json | 13 - .../default_anti_radiation_helmet_pink.json | 13 - .../default_anti_radiation_helmet_purple.json | 13 - .../default_anti_radiation_helmet_red.json | 13 - .../default_anti_radiation_helmet_white.json | 13 - .../default_anti_radiation_helmet_yellow.json | 13 - ...default_anti_radiation_leggings_black.json | 13 - .../default_anti_radiation_leggings_blue.json | 13 - ...default_anti_radiation_leggings_brown.json | 13 - .../default_anti_radiation_leggings_cyan.json | 13 - .../default_anti_radiation_leggings_gray.json | 13 - ...default_anti_radiation_leggings_green.json | 13 - ...lt_anti_radiation_leggings_light_blue.json | 13 - ...lt_anti_radiation_leggings_light_gray.json | 13 - .../default_anti_radiation_leggings_lime.json | 13 - ...fault_anti_radiation_leggings_magenta.json | 13 - ...efault_anti_radiation_leggings_orange.json | 13 - .../default_anti_radiation_leggings_pink.json | 13 - ...efault_anti_radiation_leggings_purple.json | 13 - .../default_anti_radiation_leggings_red.json | 13 - ...default_anti_radiation_leggings_white.json | 13 - ...efault_anti_radiation_leggings_yellow.json | 13 - .../cooled_nitrogen_concentrate.json | 13 - .../fan_processing_catalysts/snow_powder.json | 5 - .../createnuclear/tags/blocks/lead_ores.json | 6 + .../tags/blocks/uranium_ores.json | 6 + .../tags/entity_types/irradiated_immune.json | 3 +- .../createnuclear/tags/fluids/nitrogen.json | 6 - .../createnuclear/tags/fluids/thorium.json | 6 - .../tags/items/all_anti_radiation_armors.json | 52 +- .../tags/items/anti_radiation_armor.json | 8 +- .../tags/items/anti_radiation_boots_dye.json | 5 + .../items/anti_radiation_chestplate_dye.json | 19 + .../anti_radiation_chestplate_full_dye.json | 20 + .../tags/items/anti_radiation_helmet_dye.json | 19 + .../items/anti_radiation_helmet_full_dye.json | 20 + .../items/anti_radiation_leggings_dye.json | 19 + .../anti_radiation_leggings_full_dye.json | 20 + .../data/createnuclear/tags/items/fuel.json | 3 +- .../createnuclear/tags/items/lead_ores.json | 6 + .../tags/items/uranium_ores.json | 6 + .../worldgen/biome/irradiated_land.json | 40 - .../worldgen/configured_feature/lead_ore.json | 2 +- .../configured_feature/nitrate_ore.json | 27 - .../configured_feature/thorium_ore.json | 27 - .../density_function/irradiated/erosion.json | 18 - .../irradiated/final_density.json | 18 - .../worldgen/noise/irradiated/erosion.json | 10 - .../noise_settings/irradiated_noise.json | 327 ------- .../worldgen/placed_feature/lead_ore.json | 8 +- .../worldgen/placed_feature/nitrate_ore.json | 27 - .../striated_ores_overworld.json | 8 +- .../worldgen/placed_feature/thorium_ore.json | 27 - .../worldgen/placed_feature/uranium_ore.json | 8 +- .../data/forge/tags/blocks/ores.json | 8 +- .../data/forge/tags/blocks/ores/nitrate.json | 6 - .../data/forge/tags/blocks/ores/thorium.json | 6 - .../tags/blocks/ores_in_ground/deepslate.json | 4 +- .../tags/blocks/ores_in_ground/stone.json | 4 +- .../blocks/storage_blocks/raw_thorium.json | 5 - .../tags/blocks/storage_blocks/thorium.json | 5 - .../data/forge/tags/items/armors/boots.json | 2 +- .../forge/tags/items/armors/chestplates.json | 17 +- .../data/forge/tags/items/armors/helmets.json | 17 +- .../forge/tags/items/armors/leggings.json | 17 +- .../forge/tags/items/buckets/nitrogen.json | 5 - .../forge/tags/items/buckets/thorium.json | 5 - .../data/forge/tags/items/coal_dusts.json | 5 + .../data/forge/tags/items/dusts.json | 1 - .../data/forge/tags/items/dusts/thorium.json | 5 - .../data/forge/tags/items/ingots.json | 3 +- .../data/forge/tags/items/ingots/thorium.json | 5 - .../data/forge/tags/items/nuggets.json | 3 +- .../forge/tags/items/nuggets/thorium.json | 5 - .../data/forge/tags/items/ores/nitrate.json | 6 - .../data/forge/tags/items/ores/thorium.json | 6 - .../data/forge/tags/items/raw_materials.json | 3 +- .../tags/items/raw_materials/thorium.json | 5 - .../data/forge/tags/items/raw_ores.json | 3 +- .../resources/data/forge/tags/items/rods.json | 3 +- .../items/storage_blocks/raw_thorium.json | 5 - .../tags/items/storage_blocks/thorium.json | 5 - .../tags/blocks/mineable/pickaxe.json | 14 +- .../tags/blocks/needs_diamond_tool.json | 10 +- .../tags/blocks/needs_iron_tool.json | 8 +- .../data/minecraft/tags/fluids/water.json | 5 - .../SimpleMultiBlockAislePatternBuilder.java | 2 + .../multiblock/SimpleMultiBlockPattern.java | 32 +- .../SimpleMultiBlockPatternBuilder.java | 68 ++ .../lib/multiblock/impl/IBetterPattern.java | 31 + .../multiblock/impl/IMultiBlockPattern.java | 3 + .../impl/IMultiBlockPatternBuilder.java | 1 - .../multiblock/manager/MultiBlockCache.java | 25 + .../multiblock/manager/MultiBlockManager.java | 27 + .../manager/RegisteredMultiBlockPattern.java | 6 + .../multiblock/misc/MultiBlockOffsetPos.java | 2 +- src/main/java/lib/multiblock/misc/Util.java | 6 +- .../createnuclear/CNAttributes.java | 18 - .../createnuclear/CNBlockEntityTypes.java | 28 +- .../nuclearteam/createnuclear/CNBlocks.java | 490 ++++------ .../createnuclear/CNClientProxy.java | 72 -- .../createnuclear/CNDamageTypes.java | 9 +- .../createnuclear/CNDisplaySources.java | 26 - .../nuclearteam/createnuclear/CNEffects.java | 4 +- .../createnuclear/CNEntityType.java | 33 - .../nuclearteam/createnuclear/CNFluids.java | 141 +-- .../nuclearteam/createnuclear/CNItems.java | 438 ++++----- .../nuclearteam/createnuclear/CNMenus.java | 6 +- .../CNOpenPipeEffectHandlers.java | 10 - .../nuclearteam/createnuclear/CNPackets.java | 4 + .../createnuclear/CNParticleRegistry.java | 42 - .../createnuclear/CNParticleTypes.java | 69 -- .../nuclearteam/createnuclear/CNPotions.java | 10 - .../createnuclear/CNRecipeTypes.java | 9 +- .../nuclearteam/createnuclear/CNShapes.java | 3 +- .../createnuclear/CNSoundEvents.java | 418 --------- .../net/nuclearteam/createnuclear/CNTags.java | 20 +- .../createnuclear/CreateNuclear.java | 39 +- .../createnuclear/CreateNuclearClient.java | 65 +- .../api/CreateNuclearRegistries.java | 22 - .../createnuclear/api/ItemRodTypesValue.java | 74 -- .../api/ReactorFluidTypesValue.java | 82 -- .../recipe/SmithingClothRecipeBuilder.java | 105 --- .../api/data/recipe/SnowPowderRecipeGen.java | 31 - .../api/multiblock/IMultiblockController.java | 8 - .../api/multiblock/MultiBlockManagerBeta.java | 9 +- .../api/multiblock/TypeMultiblock.java | 23 +- .../multiblock/fluid/ReactorFluidType.java | 186 ---- .../api/multiblock/rods/RodType.java | 376 -------- .../api/radiation/IRadiationSource.java | 9 - .../api/radiation/RadiationRegistry.java | 96 -- .../createnuclear/compat/Mods.java | 86 -- .../compat/alexscave/AlexscaveCompat.java | 76 -- .../compat/jei/CreateNuclearJEI.java | 57 +- .../jei/category/FanSnowPowderCategory.java | 35 - .../biome/BiomeIrradiationExtractorItem.java | 100 --- .../contraptions/irradiated/AnimalUtil.java | 40 - .../irradiated/CNModelLayers.java | 4 - .../irradiated/IrradiatedAnimal.java | 90 -- .../irradiated/cat/CatSitOnBlockGoal.java | 1 - .../irradiated/cat/IrradiatedCat.java | 74 +- .../cat/IrradiatedCatCollarLayer.java | 32 + .../irradiated/chicken/IrradiatedChicken.java | 67 +- .../irradiated/cow/IrradiatedCow.java | 100 --- .../irradiated/cow/IrradiatedCowModel.java | 109 --- .../irradiated/cow/IrradiatedCowRenderer.java | 25 - .../wolf/IrradiatedWoldCollarLayer.java | 23 + .../irradiated/wolf/IrradiatedWolf.java | 14 +- .../palettes/PaletteBlockPattern.java | 39 +- .../palettes/PalettesVariantEntry.java | 14 +- .../content/effects/IodineEffect.java | 27 - .../content/effects/RadiationEffect.java | 83 ++ .../content/effects/VicinityEffect.java | 64 -- .../campfire/EnrichingCampfireBlock.java | 9 +- .../enriching/fire/EnrichingFireBlock.java | 18 +- .../AntiRadiationArmorClientExtensions.java | 32 - .../armor/AntiRadiationArmorItem.java | 368 ++++++-- .../armor/AntiRadiationArmorModel.java | 99 -- .../content/equipment/cloth/ClothItem.java | 9 +- .../explosion/CNAdvancedEntityModel.java | 32 - .../content/explosion/CNAdvancedModelBox.java | 208 ----- .../content/explosion/CNBasicEntityModel.java | 35 - .../content/explosion/CNBasicModelPart.java | 315 ------- .../explosion/CNNuclearExplosionSound.java | 62 -- .../explosion/CNTabulaModelRenderUtils.java | 119 --- .../explosion/NuclearExplosionEntity.java | 289 ------ .../fan/processing/CNFanProcessingTypes.java | 68 +- .../fan/processing/SnowPowderRecipe.java | 39 - .../content/logistics/BigFluidStack.java | 79 -- .../content/multiblock/CNMultiblock.java | 82 +- .../content/multiblock/IHeat.java | 60 +- .../content/multiblock/MultiblockHelpers.java | 67 -- .../content/multiblock/ReactorAssembler.java | 199 ----- .../multiblock/alarm/ReactorAlarm.java | 84 -- .../multiblock/alarm/ReactorAlarmEntity.java | 101 --- .../alarm/ReactorAlarmSoundInstance.java | 50 -- .../bluePrintItem/ReactorBluePrintItem.java | 35 +- .../ReactorBluePrintItemPacket.java | 69 +- .../ReactorBluePrintItemScreen.java | 26 +- .../bluePrintItem/ReactorBluePrintMenu.java | 87 +- .../multiblock/casing/ReactorCasing.java | 51 +- .../casing/ReactorCasingEntity.java | 12 + .../controller/EventTriggerPacket.java | 34 + .../controller/ReactorControllerBlock.java | 167 ++-- .../ReactorControllerBlockEntity.java | 843 ++++++++---------- .../ReactorControllerGenerator.java | 44 +- .../ReactorControllerInventory.java | 6 +- .../controller/ReactorDebugDiagnostics.java | 57 -- .../ReactorRunningSoundInstance.java | 61 -- .../consumable/ConsumableTimer.java | 62 -- .../consumable/ConsumptionCycleManager.java | 161 ---- .../consumable/FluidConsumable.java | 49 - .../controller/consumable/IConsumable.java | 24 - .../controller/consumable/ItemConsumable.java | 45 - .../controller/consumable/PatternReader.java | 39 - .../display/ReactorDisplayState.java | 134 --- .../display/ReactorGoggleTooltipRenderer.java | 142 --- .../manager/AbstractReactorIOManager.java | 89 -- .../manager/ReactorAlarmManager.java | 71 -- .../manager/ReactorAlarmManagerI.java | 12 - .../manager/ReactorFrameDisplayManager.java | 135 --- .../manager/ReactorFrameDisplayManagerI.java | 47 - .../controller/manager/ReactorIOManager.java | 49 - .../manager/ReactorInputFluidManager.java | 167 ---- .../manager/ReactorInputFluidManagerI.java | 38 - .../manager/ReactorInputManager.java | 195 ---- .../manager/ReactorInputManagerI.java | 28 - .../manager/ReactorOutputManager.java | 114 --- .../manager/ReactorOutputManagerI.java | 20 - .../service/DefaultHeatService.java | 26 - .../service/DefaultPersistenceService.java | 50 -- .../FluidConsumptionRateCalculator.java | 52 -- .../controller/service/IExplosionService.java | 17 - .../IFluidConsumptionRateCalculator.java | 25 - .../controller/service/IHeatService.java | 13 - .../service/IPersistenceService.java | 9 - .../service/IReactorAlarmCoordinator.java | 29 - .../IReactorHeatUpdateCoordinator.java | 82 -- .../service/IReactorMeltdownMonitor.java | 31 - .../service/ReactorAlarmCoordinator.java | 44 - .../service/ReactorHeatUpdateCoordinator.java | 131 --- .../service/ReactorMeltdownExecutor.java | 51 -- .../service/ReactorMeltdownMonitor.java | 67 -- .../snapshot/ReactorInputSnapshot.java | 32 - .../snapshot/ReactorInputSnapshotBuilder.java | 49 - .../multiblock/cooler/ReactorCooler.java | 42 - .../multiblock/core/ReactorCoreEntity.java | 76 +- .../multiblock/fluid/CNReactorFluidTypes.java | 54 -- .../multiblock/frame/ReactorFrame.java | 61 +- .../multiblock/frame/ReactorFrameEntity.java | 79 -- .../frame/ReactorFrameRenderer.java | 74 -- .../frame/ReactorGaugeOverrides.java | 21 + .../multiblock/input/ReactorInput.java | 146 +++ ...putEntity.java => ReactorInputEntity.java} | 71 +- .../input/ReactorInputGenerator.java | 25 + .../input/ReactorInputInventory.java | 32 + .../multiblock/input/ReactorInputMenu.java | 99 ++ ...putScreen.java => ReactorInputScreen.java} | 6 +- .../input/fluid/PersistentFluidLocks.java | 92 -- .../PlayerInteractReactorFluidInput.java | 102 --- .../input/fluid/ReactorFluidInput.java | 111 --- .../input/fluid/ReactorFluidInputEntity.java | 235 ----- .../fluid/ReactorFluidInputGenerator.java | 34 - .../input/fluid/VirtualReactorInputFluid.java | 89 -- .../input/item/ReactorRodInput.java | 113 --- .../input/item/ReactorRodInputGenerator.java | 34 - .../input/item/ReactorRodInputInventory.java | 32 - .../input/item/ReactorRodInputMenu.java | 125 --- .../input/item/VirtualReactorInputsItem.java | 19 - .../multiblock/output/ReactorOutput.java | 108 ++- .../output/ReactorOutputEntity.java | 106 ++- .../multiblock/pattern/ReactorPattern.java | 114 --- .../reactorCooler/ReactorCooler.java | 66 ++ .../reactorLogic/DefaultHeatCalculator.java | 111 --- .../DefaultOverheatController.java | 45 - .../reactorLogic/EquilibriumState.java | 21 - .../multiblock/reactorLogic/HeatBalance.java | 34 - .../multiblock/reactorLogic/HeatManager.java | 33 - .../reactorLogic/IHeatCalculator.java | 11 - .../reactorLogic/IOverheatController.java | 10 - .../reinforced/ReinforcedGlassBlock.java | 12 - .../content/multiblock/rod/CNRodTypes.java | 42 - .../particles/IrradiatedParticles.java | 50 -- .../particles/IrradiatedParticlesData.java | 84 -- .../particles/NuclearMushroomCloudModel.java | 213 ----- .../NuclearMushroomCloudParticle.java | 171 ---- .../SmallNuclearExplosionParticle.java | 280 ------ .../content/radiation/CNRadiationValues.java | 19 - .../radiation/RadiationBucketItem.java | 39 - .../content/radiation/RadiationEffect.java | 71 -- .../radiation/RadiationEffectHandler.java | 25 - .../content/radiation/RadiationItem.java | 22 - .../capability/IRadiationCapability.java | 20 - .../capability/RadiationCapability.java | 246 ----- .../capability/RadiationProvider.java | 43 - .../AbstractReactorStatDisplaySource.java | 54 -- .../source/CoolerDisplaySource.java | 46 - .../displayLink/source/FuelDisplaySource.java | 45 - .../displayLink/source/HeatDisplaySource.java | 34 - .../source/LiquidLevelDisplaySource.java | 51 -- .../source/ReactorDisplayConstants.java | 9 - .../source/ReactorGaugeRenderer.java | 15 - .../source/ReactorSizeDisplaySource.java | 54 -- .../displayLink/source/ReactorSummary.java | 106 --- .../source/ReactorSummaryDisplaySource.java | 239 ----- .../content/uraniumOre/UraniumOreItem.java | 22 - .../foundation/advancement/CNAdvancement.java | 430 +++------ .../advancement/CNAdvancementBehaviour.java | 114 --- .../foundation/advancement/CNTriggers.java | 23 - .../advancement/CreateNuclearAdvancement.java | 8 +- .../advancement/CriterionTriggerBase.java | 84 -- .../SimpleCreateNuclearTrigger.java | 41 - .../foundation/block/EventTriggerBlock.java | 37 + .../block/MultiDirectionalReactorBlock.java | 34 - .../damageTypes/CNDamageSources.java | 37 - .../data/CNBuilderTransformers.java | 97 -- .../data/recipe/CNCompactingRecipeGen.java | 9 +- .../data/recipe/CNCrushingRecipeGen.java | 42 +- .../data/recipe/CNDeployingRecipeGen.java | 52 -- .../data/recipe/CNEnrichedRecipeGen.java | 3 +- .../recipe/CNItemApplicationRecipeGen.java | 13 +- .../recipe/CNMechanicalCraftingRecipeGen.java | 105 +-- .../data/recipe/CNMixingRecipeGen.java | 26 +- .../data/recipe/CNPressingRecipeGen.java | 3 +- .../data/recipe/CNProcessingRecipeGen.java | 17 +- .../data/recipe/CNShapelessRecipeGen.java | 140 +++ .../data/recipe/CNSnowPowderRecipeGen.java | 35 - .../data/recipe/CNStandardRecipeGen.java | 28 +- .../foundation/events/CNClientEvent.java | 8 +- .../foundation/events/ClientEvents.java | 104 --- .../events/CommentEventClients.java | 16 + .../foundation/events/CommentEvents.java | 28 - .../foundation/events/HudRenderer.java | 6 +- .../foundation/events/RodsTooltipHandler.java | 35 - .../events/overlay/EasingHudOverlay.java | 41 + .../events/overlay/EventTextOverlay.java | 65 ++ .../events/overlay/HelmetOverlay.java | 7 +- .../IrradiatedOverlayRendererVision.java | 9 +- .../events/overlay/RadiationOverlay.java | 61 ++ .../foundation/events/possible code | 66 ++ .../foundation/item/DyedItemsList.java | 8 - .../foundation/item/RodsStats.java | 67 -- .../foundation/mixin/BaseFireBlockMixin.java | 5 +- .../mixin/SmithingTransformRecipeMixin.java | 35 - .../mixin/client/CameraAccessor.java | 12 - .../mixin/client/GameRendererMixin.java | 42 - .../mixin/client/RadiationHeartMixin.java | 39 - .../ponder/CNCreateNuclearPonderTags.java | 9 +- .../foundation/ponder/CNPonderIndex.java | 18 +- .../foundation/ponder/CNPonderReactor.java | 103 +++ .../ponder/CreateNuclearPonderPlugin.java | 1 - .../foundation/utility/ClothTagHelper.java | 43 - .../utility/ConfigValueResolver.java | 57 -- .../foundation/utility/CreateNuclearLang.java | 1 + .../foundation/utility/InventoryHashUtil.java | 97 -- .../foundation/utility/Maths.java | 144 --- .../foundation/utility/NotifyUtil.java | 155 ---- .../foundation/utility/SimplexNoise.java | 385 -------- .../foundation/utility/TextUtils.java | 87 +- .../DefaultHeatCalculatorGameTest.java | 233 ----- .../ReactorInputFluidManagerGameTest.java | 453 ---------- .../registry/CreateNuclearRegistriesImpl.java | 29 - .../infrastructure/config/CBiomeRestore.java | 21 - .../infrastructure/config/CExplode.java | 20 - .../infrastructure/config/CExplose.java | 20 + .../infrastructure/config/CNCClient.java | 17 +- .../infrastructure/config/CNCCommon.java | 8 +- .../infrastructure/config/CNCServer.java | 26 +- .../infrastructure/config/CNConfigs.java | 10 - .../infrastructure/config/CNotify.java | 18 - .../infrastructure/config/CRadiation.java | 71 -- .../infrastructure/config/CReactorHeat.java | 14 - .../infrastructure/config/CRods.java | 47 +- .../infrastructure/config/CWorldGen.java | 4 +- .../data/CreateNuclearDatagen.java | 8 +- .../data/CreateNuclearRegistrateTags.java | 13 +- .../data/GeneratedEntriesProvider.java | 23 +- .../ponder/scenes/CNPonderReactorScenes.java | 348 -------- .../worldgen/CNBiomeModifiers.java | 7 +- .../worldgen/CNConfiguredFeatures.java | 22 +- .../worldgen/CNPlacedFeatures.java | 13 +- .../worldgen/CNPlacementModifiers.java | 19 - .../worldgen/ConfigPlacementFilter.java | 24 - .../biome/BiomeIrradiationMapping.java | 8 - .../biome/BiomeIrradiationMappings.java | 28 - .../biome/BiomeIrradiationService.java | 120 --- .../worldgen/biome/CNBiomes.java | 29 - .../worldgen/biome/CNDensityFunctions.java | 41 - .../worldgen/biome/CNNoiseData.java | 29 - .../biome/CNNoiseGeneratorSettings.java | 99 -- .../worldgen/biome/IrradiatedBiomes.java | 57 -- .../biome/PersistentIrradiatedZones.java | 72 -- .../biome/surfacerule/BiomeTagRule.java | 35 - .../surfacerule/IrradiatedSurfaceRules.java | 81 -- .../resources/META-INF/accesstransformer.cfg | 9 - src/main/resources/META-INF/mods.toml | 2 +- .../createnuclear/lang/default/interface.json | 77 +- .../lang/default/irradiated.json | 3 - .../createnuclear/lang/default/potion.json | 14 +- .../createnuclear/lang/default/reactor.json | 14 +- .../createnuclear/lang/default/tooltips.json | 35 +- .../assets/createnuclear/lang/en_US.json | 28 +- .../assets/createnuclear/lang/fr_fr.json | 18 +- .../models/block/reactor/controller/item.json | 4 +- .../reactor/fluid_input/fluid_input.json | 91 -- .../fluid_input/fluid_input_vertical.json | 249 ------ .../block/reactor/fluid_input/item.json | 91 -- .../block/reactor/frame/frame_bottom.json | 50 +- .../block/reactor/frame/frame_middle.json | 42 +- .../block/reactor/frame/frame_none.json | 22 +- .../models/block/reactor/frame/frame_top.json | 42 +- .../rod_input.json => input/block.json} | 4 +- .../reactor/{rod_input => input}/item.json | 4 +- .../models/block/reactor/output/item.json | 2 +- .../models/block/reactor/output/output.json | 2 +- .../block/reactor/output/output_vertical.json | 2 +- .../reactor/rod_input/rod_input_vertical.json | 249 ------ .../default_anti_radiation_boots/item.json | 113 --- .../item.json | 184 ---- .../default_anti_radiation_helmet/item.json | 95 -- .../default_anti_radiation_leggings/item.json | 128 --- .../particles/irradiated_particles.json | 5 - .../particles/nuclear_mushroom_cloud.json | 20 - .../nuclear_mushroom_cloud_explosion.json | 20 - .../nuclear_mushroom_cloud_smoke.json | 12 - .../ponder/reactor/reactor_t1_ponder.nbt | Bin 1442 -> 0 bytes .../ponder/reactor/reactor_t2_ponder.nbt | Bin 2346 -> 0 bytes .../ponder/reactor/reactor_t3_ponder.nbt | Bin 3700 -> 0 bytes .../createnuclear/ponder/reactor/setup.nbt | Bin 1265 -> 1370 bytes .../createnuclear/sounds/alarm/alarm.ogg | Bin 333303 -> 0 bytes .../createnuclear/sounds/biomes/wasteland.ogg | Bin 1016377 -> 0 bytes .../explosion/large_nuclear_explosion.ogg | Bin 45567 -> 0 bytes .../createnuclear/sounds/explosion/main.ogg | Bin 181880 -> 0 bytes .../sounds/explosion/nuclear_explosion.ogg | Bin 17025 -> 0 bytes .../explosion/nuclear_explosion_rumble.ogg | Bin 205471 -> 0 bytes .../sounds/explosion/ringing.ogg | Bin 48319 -> 0 bytes .../createnuclear/sounds/explosion/rumble.ogg | Bin 127937 -> 0 bytes .../sounds/explosion/shockwave.ogg | Bin 214452 -> 0 bytes .../createnuclear/sounds/geiger/high.ogg | Bin 1311031 -> 0 bytes .../createnuclear/sounds/geiger/low.ogg | Bin 735139 -> 0 bytes .../createnuclear/sounds/geiger/medium.ogg | Bin 1234287 -> 0 bytes .../sounds/reacteur/activation.ogg | Bin 28497 -> 0 bytes .../assemble_deassemble/motor_assemble.ogg | Bin 41729 -> 0 bytes .../assemble_deassemble/motor_disassemble.ogg | Bin 21913 -> 0 bytes .../createnuclear/sounds/reacteur/running.ogg | Bin 803808 -> 0 bytes .../sounds/reacteur/shut_off.ogg | Bin 53108 -> 0 bytes .../textures/block/deepslate_nitrate_ore.png | Bin 3540 -> 0 bytes .../textures/block/deepslate_thorium_ore.png | Bin 3482 -> 0 bytes .../textures/block/nitrate_ore.png | Bin 3474 -> 0 bytes .../alternatives/autunite_cut_basketweave.png | Bin 3611 -> 495 bytes .../alternatives/autunite_cut_bond.png | Bin 3555 -> 496 bytes .../alternatives/autunite_cut_indented.png | Bin 3503 -> 515 bytes .../stone_types/brick/autunite_cut_brick.png | Bin 3505 -> 557 bytes .../stone_types/cap/autunite_cut_cap.png | Bin 3503 -> 515 bytes .../cap/autunite_cut_cap_connected.png | Bin 6278 -> 4858 bytes .../palettes/stone_types/cut/autunite_cut.png | Bin 3084 -> 513 bytes .../layered/autunite_cut_layered.png | Bin 3472 -> 650 bytes .../autunite_cut_layered_connected.png | Bin 3789 -> 3301 bytes .../stone_types/natural/autunite_0.png | Bin 3235 -> 980 bytes .../stone_types/natural/autunite_1.png | Bin 3228 -> 905 bytes .../stone_types/natural/autunite_2.png | Bin 3232 -> 994 bytes .../stone_types/natural/autunite_3.png | Bin 3224 -> 994 bytes .../pillar/autunite_cut_pillar.png | Bin 3548 -> 504 bytes .../pillar/autunite_cut_pillar_connected.png | Bin 7328 -> 4159 bytes .../polished/autunite_cut_polished.png | Bin 3461 -> 596 bytes .../stone_types/slab/autunite_cut_slab.png | Bin 3469 -> 380 bytes .../small_brick/autunite_cut_small_brick.png | Bin 3601 -> 566 bytes .../textures/block/raw_thorium_block.png | Bin 3651 -> 0 bytes .../block/reactor/casing/casing_inner.png | Bin 0 -> 514 bytes .../block/reactor/casing/casing_top.png | Bin 0 -> 491 bytes .../casing/reactor_casing_connected.png | Bin 10532 -> 18711 bytes .../controller/controller_panel_off.png | Bin 3418 -> 0 bytes .../controller/controller_panel_on.png | Bin 3639 -> 0 bytes .../controller/controller_panel_standby.png | Bin 3625 -> 0 bytes .../block/reactor/fluid_input/fluid_input.png | Bin 3369 -> 0 bytes .../rod_input.png => input/input.png} | Bin .../textures/block/reactor_alarm.png | Bin 3575 -> 0 bytes .../textures/block/thorium_block.png | Bin 3117 -> 0 bytes .../textures/block/thorium_ore.png | Bin 3458 -> 0 bytes .../textures/entity/irradiated_cow.png | Bin 3131 -> 0 bytes .../textures/fluid/nitrogen_flow.png | Bin 9446 -> 0 bytes .../textures/fluid/nitrogen_flow.png.mcmeta | 5 - .../textures/fluid/nitrogen_still.png | Bin 14952 -> 0 bytes .../textures/fluid/nitrogen_still.png.mcmeta | 5 - .../textures/fluid/thorium_flow.png | Bin 12095 -> 0 bytes .../textures/fluid/thorium_flow.png.mcmeta | 5 - .../textures/fluid/thorium_still.png | Bin 13016 -> 0 bytes .../textures/fluid/thorium_still.png.mcmeta | 5 - .../backgrounds/background_advancement.png | Bin 442 -> 0 bytes .../createnuclear/textures/gui/icons.png | Bin 10991 -> 0 bytes .../textures/gui/storage-slot.png | Bin 602 -> 1253 bytes .../item/armors/anti_radiation_boots.png | Bin 0 -> 232 bytes .../item/armors/black_anti_radiation_suit.png | Bin 5826 -> 0 bytes .../item/armors/blue_anti_radiation_suit.png | Bin 5918 -> 0 bytes .../item/armors/brown_anti_radiation_suit.png | Bin 5859 -> 0 bytes .../black_anti_radiation_chestplate.png | Bin 0 -> 363 bytes .../blue_anti_radiation_chestplate.png | Bin 0 -> 405 bytes .../brown_anti_radiation_chestplate.png | Bin 0 -> 400 bytes .../cyan_anti_radiation_chestplate.png | Bin 0 -> 398 bytes .../gray_anti_radiation_chestplate.png | Bin 0 -> 398 bytes .../green_anti_radiation_chestplate.png | Bin 0 -> 396 bytes .../light_blue_anti_radiation_chestplate.png | Bin 0 -> 416 bytes .../light_gray_anti_radiation_chestplate.png | Bin 0 -> 395 bytes .../lime_anti_radiation_chestplate.png | Bin 0 -> 391 bytes .../magenta_anti_radiation_chestplate.png | Bin 0 -> 405 bytes .../orange_anti_radiation_chestplate.png | Bin 0 -> 417 bytes .../pink_anti_radiation_chestplate.png | Bin 0 -> 410 bytes .../purple_anti_radiation_chestplate.png | Bin 0 -> 412 bytes .../red_anti_radiation_chestplate.png | Bin 0 -> 384 bytes .../white_anti_radiation_chestplate.png | Bin 0 -> 359 bytes .../yellow_anti_radiation_chestplate.png | Bin 0 -> 402 bytes .../item/armors/cyan_anti_radiation_suit.png | Bin 5917 -> 0 bytes .../armors/default_anti_radiation_boots.png | Bin 368 -> 0 bytes .../default_anti_radiation_chestplate.png | Bin 575 -> 0 bytes .../armors/default_anti_radiation_helmet.png | Bin 360 -> 0 bytes .../default_anti_radiation_leggings.png | Bin 427 -> 0 bytes .../armors/default_anti_radiation_suit.png | Bin 2979 -> 0 bytes .../item/armors/gray_anti_radiation_suit.png | Bin 5891 -> 0 bytes .../item/armors/green_anti_radiation_suit.png | Bin 5842 -> 0 bytes .../helmets/black_anti_radiation_helmet.png | Bin 0 -> 387 bytes .../helmets/blue_anti_radiation_helmet.png | Bin 0 -> 402 bytes .../helmets/brown_anti_radiation_helmet.png | Bin 0 -> 416 bytes .../helmets/cyan_anti_radiation_helmet.png | Bin 0 -> 404 bytes .../helmets/gray_anti_radiation_helmet.png | Bin 0 -> 408 bytes .../helmets/green_anti_radiation_helmet.png | Bin 0 -> 409 bytes .../light_blue_anti_radiation_helmet.png | Bin 0 -> 415 bytes .../light_gray_anti_radiation_helmet.png | Bin 0 -> 392 bytes .../helmets/lime_anti_radiation_helmet.png | Bin 0 -> 395 bytes .../helmets/magenta_anti_radiation_helmet.png | Bin 0 -> 399 bytes .../helmets/orange_anti_radiation_helmet.png | Bin 0 -> 409 bytes .../helmets/pink_anti_radiation_helmet.png | Bin 0 -> 400 bytes .../helmets/purple_anti_radiation_helmet.png | Bin 0 -> 401 bytes .../helmets/red_anti_radiation_helmet.png | Bin 0 -> 407 bytes .../helmets/white_anti_radiation_helmet.png | Bin 0 -> 411 bytes .../helmets/yellow_anti_radiation_helmet.png | Bin 0 -> 410 bytes .../black_anti_radiation_leggings.png | Bin 0 -> 311 bytes .../leggings/blue_anti_radiation_leggings.png | Bin 0 -> 345 bytes .../brown_anti_radiation_leggings.png | Bin 0 -> 334 bytes .../leggings/cyan_anti_radiation_leggings.png | Bin 0 -> 335 bytes .../leggings/gray_anti_radiation_leggings.png | Bin 0 -> 334 bytes .../green_anti_radiation_leggings.png | Bin 0 -> 334 bytes .../light_blue_anti_radiation_leggings.png | Bin 0 -> 356 bytes .../light_gray_anti_radiation_leggings.png | Bin 0 -> 341 bytes .../leggings/lime_anti_radiation_leggings.png | Bin 0 -> 347 bytes .../magenta_anti_radiation_leggings.png | Bin 0 -> 351 bytes .../orange_anti_radiation_leggings.png | Bin 0 -> 347 bytes .../leggings/pink_anti_radiation_leggings.png | Bin 0 -> 358 bytes .../purple_anti_radiation_leggings.png | Bin 0 -> 346 bytes .../leggings/red_anti_radiation_leggings.png | Bin 0 -> 334 bytes .../white_anti_radiation_leggings.png | Bin 0 -> 324 bytes .../yellow_anti_radiation_leggings.png | Bin 0 -> 354 bytes .../armors/light_blue_anti_radiation_suit.png | Bin 5901 -> 0 bytes .../armors/light_gray_anti_radiation_suit.png | Bin 5867 -> 0 bytes .../item/armors/lime_anti_radiation_suit.png | Bin 5901 -> 0 bytes .../armors/magenta_anti_radiation_suit.png | Bin 5890 -> 0 bytes .../armors/orange_anti_radiation_suit.png | Bin 5748 -> 0 bytes .../item/armors/pink_anti_radiation_suit.png | Bin 5831 -> 0 bytes .../armors/purple_anti_radiation_suit.png | Bin 5907 -> 0 bytes .../item/armors/red_anti_radiation_suit.png | Bin 3091 -> 0 bytes .../item/armors/white_anti_radiation_suit.png | Bin 5861 -> 0 bytes .../armors/yellow_anti_radiation_suit.png | Bin 5847 -> 0 bytes .../biome_irradiation_extractor/empty.png | Bin 534 -> 0 bytes .../item/biome_irradiation_extractor/full.png | Bin 572 -> 0 bytes .../item/biome_irradiation_extractor/half.png | Bin 558 -> 0 bytes .../biome_irradiation_extractor/quarter.png | Bin 546 -> 0 bytes .../three_quarters.png | Bin 566 -> 0 bytes .../item/cooled_nitrogen_concentrate.png | Bin 3451 -> 0 bytes .../createnuclear/textures/item/nitrate.png | Bin 3264 -> 0 bytes .../textures/item/nitrogen_bucket.png | Bin 353 -> 0 bytes .../textures/item/nitrogen_concentrate.png | Bin 3127 -> 0 bytes .../textures/item/raw_thorium.png | Bin 3273 -> 0 bytes .../textures/item/reinforced_glass_bottle.png | Bin 509 -> 0 bytes .../textures/item/thorium_bucket.png | Bin 3453 -> 0 bytes .../textures/item/thorium_dust.png | Bin 3082 -> 0 bytes .../textures/item/thorium_ingot.png | Bin 3099 -> 0 bytes .../textures/item/thorium_nugget.png | Bin 3002 -> 0 bytes .../textures/item/thorium_rod.png | Bin 3026 -> 0 bytes .../textures/misc/bomb_flash.png | Bin 135 -> 0 bytes .../textures/mob_effect/iodine.png | Bin 3409 -> 0 bytes .../armor/black_anti_radiation_suit.png | Bin 5826 -> 0 bytes .../black_anti_radiation_suit_layer_1.png | Bin 0 -> 1078 bytes .../black_anti_radiation_suit_layer_2.png | Bin 0 -> 306 bytes .../models/armor/blue_anti_radiation_suit.png | Bin 5918 -> 0 bytes .../blue_anti_radiation_suit_layer_1.png | Bin 0 -> 1102 bytes .../blue_anti_radiation_suit_layer_2.png | Bin 0 -> 323 bytes .../armor/brown_anti_radiation_suit.png | Bin 5859 -> 0 bytes .../brown_anti_radiation_suit_layer_1.png | Bin 0 -> 1125 bytes .../brown_anti_radiation_suit_layer_2.png | Bin 0 -> 325 bytes .../models/armor/cyan_anti_radiation_suit.png | Bin 5917 -> 0 bytes .../cyan_anti_radiation_suit_layer_1.png | Bin 0 -> 1111 bytes .../cyan_anti_radiation_suit_layer_2.png | Bin 0 -> 328 bytes .../armor/default_anti_radiation_suit.png | Bin 3608 -> 0 bytes .../models/armor/gray_anti_radiation_suit.png | Bin 5891 -> 0 bytes .../gray_anti_radiation_suit_layer_1.png | Bin 0 -> 1105 bytes .../gray_anti_radiation_suit_layer_2.png | Bin 0 -> 325 bytes .../armor/green_anti_radiation_suit.png | Bin 5842 -> 0 bytes .../green_anti_radiation_suit_layer_1.png | Bin 0 -> 1121 bytes .../green_anti_radiation_suit_layer_2.png | Bin 0 -> 338 bytes .../armor/light_blue_anti_radiation_suit.png | Bin 5901 -> 0 bytes ...light_blue_anti_radiation_suit_layer_1.png | Bin 0 -> 1145 bytes ...light_blue_anti_radiation_suit_layer_2.png | Bin 0 -> 327 bytes .../armor/light_gray_anti_radiation_suit.png | Bin 5867 -> 0 bytes ...light_gray_anti_radiation_suit_layer_1.png | Bin 0 -> 1122 bytes ...light_gray_anti_radiation_suit_layer_2.png | Bin 0 -> 308 bytes .../models/armor/lime_anti_radiation_suit.png | Bin 5901 -> 0 bytes .../lime_anti_radiation_suit_layer_1.png | Bin 0 -> 1144 bytes .../lime_anti_radiation_suit_layer_2.png | Bin 0 -> 320 bytes .../armor/magenta_anti_radiation_suit.png | Bin 5890 -> 0 bytes .../magenta_anti_radiation_suit_layer_1.png | Bin 0 -> 1118 bytes .../magenta_anti_radiation_suit_layer_2.png | Bin 0 -> 330 bytes .../armor/orange_anti_radiation_suit.png | Bin 5748 -> 0 bytes .../orange_anti_radiation_suit_layer_1.png | Bin 0 -> 1186 bytes .../orange_anti_radiation_suit_layer_2.png | Bin 0 -> 346 bytes .../models/armor/pink_anti_radiation_suit.png | Bin 5831 -> 0 bytes .../pink_anti_radiation_suit_layer_1.png | Bin 0 -> 1139 bytes .../pink_anti_radiation_suit_layer_2.png | Bin 0 -> 329 bytes .../armor/purple_anti_radiation_suit.png | Bin 5907 -> 0 bytes .../purple_anti_radiation_suit_layer_1.png | Bin 0 -> 1136 bytes .../purple_anti_radiation_suit_layer_2.png | Bin 0 -> 343 bytes .../models/armor/red_anti_radiation_suit.png | Bin 3091 -> 0 bytes .../armor/red_anti_radiation_suit_layer_1.png | Bin 0 -> 1119 bytes .../armor/red_anti_radiation_suit_layer_2.png | Bin 0 -> 337 bytes .../armor/white_anti_radiation_suit.png | Bin 5861 -> 0 bytes .../white_anti_radiation_suit_layer_1.png | Bin 0 -> 1074 bytes .../white_anti_radiation_suit_layer_2.png | Bin 0 -> 294 bytes .../armor/yellow_anti_radiation_suit.png | Bin 5847 -> 0 bytes .../yellow_anti_radiation_suit_layer_1.png | Bin 0 -> 1141 bytes .../yellow_anti_radiation_suit_layer_2.png | Bin 0 -> 328 bytes .../particle/irradiated_particles.png | Bin 516 -> 0 bytes .../particle/nuclear_mushroom_cloud.png | Bin 24450 -> 0 bytes .../assets/minecraft/atlases/blocks.json | 16 - .../resources/createnuclear.forge.mixins.json | 7 +- .../structures/empty_platform.nbt | Bin 208 -> 0 bytes src/main/resources/icon.png | Bin 46092 -> 0 bytes 1117 files changed, 7112 insertions(+), 27076 deletions(-) delete mode 100644 .vscode/settings.json delete mode 100644 AUDIT_ACTUEL.md delete mode 100644 AUDIT_V1.md create mode 100644 run/mods/Jade-1.20.1-Forge-11.12.2.jar.disabled delete mode 100644 run/schematics/reactor.nbt delete mode 100644 run/schematics/reactor9x9.nbt delete mode 100644 run/schematics/reactor_t1.nbt delete mode 100644 run/schematics/reactor_t1_ponder.nbt delete mode 100644 run/schematics/reactor_t2.nbt delete mode 100644 run/schematics/reactor_t2_ponder.nbt delete mode 100644 run/schematics/reactor_t3.nbt delete mode 100644 run/schematics/reactor_t3_ponder.nbt delete mode 100644 run/schematics/reactorhdsbquifu.nbt delete mode 100644 run/schematics/setup.nbt delete mode 100644 run/schematics/testalarm.nbt delete mode 100644 src/generated/resources/.cache/09bd1f7b209874b6c29086df91c49669495dd477 delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/deepslate_nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/deepslate_thorium_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/nitrogen.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/raw_thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/reactor_alarm.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/reactor_fluid_input.json create mode 100644 src/generated/resources/assets/createnuclear/blockstates/reactor_input.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/reactor_rod_input.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/thorium.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/blockstates/thorium_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/deepslate_nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/deepslate_thorium_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/nitrogen.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/raw_thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/reactor/controller/off.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/reactor/controller/on.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/reactor/controller/standby.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/reactor_alarm.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/thorium.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/models/block/thorium_ore.json rename src/generated/resources/assets/createnuclear/models/item/{nitrogen_bucket.json => anti_radiation_boots.json} (50%) delete mode 100644 src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/full.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/half.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/quarter.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/three_quarters.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/cooled_nitrogen_concentrate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/deepslate_nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/deepslate_thorium_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_boots.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_helmet.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/nitrate.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/nitrate_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/nitrogen_concentrate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/raw_thorium.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/raw_thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/reactor_alarm.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/reactor_fluid_input.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/reactor_input.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/reactor_rod_input.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/reinforced_glass_bottle.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_block.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_bucket.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_dust.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_ingot.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_nugget.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_ore.json delete mode 100644 src/generated/resources/assets/createnuclear/models/item/thorium_rod.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_leggings.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_chestplate.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_helmet.json create mode 100644 src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_leggings.json delete mode 100644 src/generated/resources/assets/createnuclear/sounds.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/absolute_zero.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/avoiding_cancer.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/chemistry_101.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/chill_out.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/craft_enriching_campfire.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/crunchy_uranium.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/cryogenic_baptism.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/fueling_the_reactor.json create mode 100644 src/generated/resources/data/createnuclear/advancements/full_anti_radiation_armor.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/getting_concentrated.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/no_time_to_die.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/raw_thorium.json rename src/generated/resources/data/createnuclear/advancements/{feeding_the_reactor.json => reactor_input.json} (69%) rename src/generated/resources/data/createnuclear/advancements/{unlimited_power.json => reactor_output.json} (76%) delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/brewing/crafting/reinforced_glass_bottle.json rename src/generated/resources/data/createnuclear/advancements/recipes/combat/{smithing/default_anti_radiation_boots_cyan.json => crafting/items/armors/anti_radiation_boots.json} (78%) create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_chestplate.json rename src/generated/resources/data/createnuclear/advancements/recipes/combat/{smithing/default_anti_radiation_boots_black.json => crafting/items/armors/blue_anti_radiation_helmet.json} (77%) rename src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/{default_anti_radiation_boots.json => blue_anti_radiation_leggings.json} (76%) create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_chestplate.json rename src/generated/resources/data/createnuclear/advancements/recipes/combat/{smithing/default_anti_radiation_boots_blue.json => crafting/items/armors/cyan_anti_radiation_helmet.json} (77%) create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_leggings.json rename src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/{default_anti_radiation_chestplate.json => magenta_anti_radiation_chestplate.json} (81%) rename src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/{default_anti_radiation_helmet.json => magenta_anti_radiation_helmet.json} (81%) rename src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/{default_anti_radiation_leggings.json => magenta_anti_radiation_leggings.json} (81%) create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_chestplate.json rename src/generated/resources/data/createnuclear/advancements/recipes/combat/{smithing/default_anti_radiation_boots_brown.json => crafting/items/armors/red_anti_radiation_helmet.json} (77%) create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_leggings.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_green.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_lime.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_orange.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_pink.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_purple.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_red.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_white.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_black.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_brown.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_green.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_lime.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_orange.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_pink.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_purple.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_red.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_white.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_black.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_brown.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_green.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_lime.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_orange.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_pink.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_purple.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_red.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_white.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_black.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_brown.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_green.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_lime.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_orange.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_pink.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_purple.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_red.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_white.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/decorations/crafting/raw/raw_thorium_block.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/biome_irradiation_extractor.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/raw_thorium_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_block_from_compacting.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_compacting.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_nugget_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/silence_the_core.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/t1.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/t2.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/t3.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/thorium_dust.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/thorium_ingot.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/thorium_liquid.json delete mode 100644 src/generated/resources/data/createnuclear/advancements/thorium_rod.json delete mode 100644 src/generated/resources/data/createnuclear/createnuclear/fluids/type/fallback.json delete mode 100644 src/generated/resources/data/createnuclear/createnuclear/fluids/type/nitrogen.json delete mode 100644 src/generated/resources/data/createnuclear/createnuclear/fluids/type/water.json delete mode 100644 src/generated/resources/data/createnuclear/createnuclear/rods/type/fallback.json delete mode 100644 src/generated/resources/data/createnuclear/damage_type/fan_radiation.json delete mode 100644 src/generated/resources/data/createnuclear/damage_type/radiation.json delete mode 100644 src/generated/resources/data/createnuclear/forge/biome_modifier/nitrate_ore.json delete mode 100644 src/generated/resources/data/createnuclear/forge/biome_modifier/thorium_ore.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_nitrate_ore.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_thorium_ore.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/nitrate_ore.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/raw_thorium_block.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_alarm.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_fluid_input.json rename src/generated/resources/data/createnuclear/loot_tables/blocks/{thorium_block.json => reactor_input.json} (73%) delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_rod_input.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_ore.json delete mode 100644 src/generated/resources/data/createnuclear/loot_tables/entities/irradiated_cow.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/compacting/thorium_fluid_to_thorium_ingot.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/biome_irradiation_extractor.json rename src/generated/resources/data/createnuclear/recipes/crafting/items/armors/{default_anti_radiation_boots.json => anti_radiation_boots.json} (72%) create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_leggings.json rename src/generated/resources/data/createnuclear/recipes/crafting/items/armors/{default_anti_radiation_chestplate.json => red_anti_radiation_chestplate.json} (76%) rename src/generated/resources/data/createnuclear/recipes/crafting/items/armors/{default_anti_radiation_helmet.json => red_anti_radiation_helmet.json} (76%) rename src/generated/resources/data/createnuclear/recipes/crafting/items/armors/{default_anti_radiation_leggings.json => red_anti_radiation_leggings.json} (72%) create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_leggings.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_chestplate.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_helmet.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_leggings.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/raw/raw_thorium_block.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/raw_thorium_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/reinforced_glass_bottle.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/thorium_block_from_compacting.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_compacting.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crafting/thorium_nugget_from_decompacting.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crushing/nitrate.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium_block.json create mode 100644 src/generated/resources/data/createnuclear/recipes/crushing/raw_uranium_block.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/deploying/reactor_fluid_input_from_fluid_pipe_and_reactor_casing.json rename src/generated/resources/data/createnuclear/recipes/{deploying/reactor_rod_input_from_hopper_and_reactor_casing.json => item_application/reactor_input_from_hopper_and_reactor_casing.json} (66%) rename src/generated/resources/data/createnuclear/recipes/{deploying => item_application}/reactor_output_from_shaft_and_reactor_casing.json (84%) delete mode 100644 src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_alarm.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/mechanical_crafting/thorium_rod.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/mixing/liquid_nitrogen.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/mixing/thorium_fluid.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_black.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_brown.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_green.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_lime.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_orange.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_pink.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_purple.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_red.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_white.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_black.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_brown.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_green.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_lime.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_orange.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_pink.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_purple.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_red.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_white.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_black.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_brown.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_green.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_lime.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_orange.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_pink.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_purple.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_red.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_white.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_black.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_brown.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_cyan.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_green.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_blue.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_gray.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_lime.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_magenta.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_orange.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_pink.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_purple.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_red.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_white.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_yellow.json delete mode 100644 src/generated/resources/data/createnuclear/recipes/snow_powder/cooled_nitrogen_concentrate.json delete mode 100644 src/generated/resources/data/createnuclear/tags/blocks/fan_processing_catalysts/snow_powder.json create mode 100644 src/generated/resources/data/createnuclear/tags/blocks/lead_ores.json create mode 100644 src/generated/resources/data/createnuclear/tags/blocks/uranium_ores.json delete mode 100644 src/generated/resources/data/createnuclear/tags/fluids/nitrogen.json delete mode 100644 src/generated/resources/data/createnuclear/tags/fluids/thorium.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_boots_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_full_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_full_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_full_dye.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/lead_ores.json create mode 100644 src/generated/resources/data/createnuclear/tags/items/uranium_ores.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/biome/irradiated_land.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/configured_feature/nitrate_ore.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/configured_feature/thorium_ore.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/erosion.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/final_density.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/noise/irradiated/erosion.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/noise_settings/irradiated_noise.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/placed_feature/nitrate_ore.json delete mode 100644 src/generated/resources/data/createnuclear/worldgen/placed_feature/thorium_ore.json delete mode 100644 src/generated/resources/data/forge/tags/blocks/ores/nitrate.json delete mode 100644 src/generated/resources/data/forge/tags/blocks/ores/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/blocks/storage_blocks/raw_thorium.json delete mode 100644 src/generated/resources/data/forge/tags/blocks/storage_blocks/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/buckets/nitrogen.json delete mode 100644 src/generated/resources/data/forge/tags/items/buckets/thorium.json create mode 100644 src/generated/resources/data/forge/tags/items/coal_dusts.json delete mode 100644 src/generated/resources/data/forge/tags/items/dusts/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/ingots/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/nuggets/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/ores/nitrate.json delete mode 100644 src/generated/resources/data/forge/tags/items/ores/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/raw_materials/thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/storage_blocks/raw_thorium.json delete mode 100644 src/generated/resources/data/forge/tags/items/storage_blocks/thorium.json delete mode 100644 src/generated/resources/data/minecraft/tags/fluids/water.json create mode 100644 src/main/java/lib/multiblock/SimpleMultiBlockPatternBuilder.java create mode 100644 src/main/java/lib/multiblock/impl/IBetterPattern.java create mode 100644 src/main/java/lib/multiblock/manager/MultiBlockCache.java create mode 100644 src/main/java/lib/multiblock/manager/MultiBlockManager.java create mode 100644 src/main/java/lib/multiblock/manager/RegisteredMultiBlockPattern.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNAttributes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNClientProxy.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNDisplaySources.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNOpenPipeEffectHandlers.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNParticleRegistry.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNParticleTypes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/CNSoundEvents.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/CreateNuclearRegistries.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/ItemRodTypesValue.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/ReactorFluidTypesValue.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SmithingClothRecipeBuilder.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SnowPowderRecipeGen.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/multiblock/IMultiblockController.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/multiblock/fluid/ReactorFluidType.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/multiblock/rods/RodType.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/radiation/IRadiationSource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/api/radiation/RadiationRegistry.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/compat/Mods.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/compat/alexscave/AlexscaveCompat.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/compat/jei/category/FanSnowPowderCategory.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/biome/BiomeIrradiationExtractorItem.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/AnimalUtil.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/IrradiatedAnimal.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCatCollarLayer.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCow.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowModel.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowRenderer.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWoldCollarLayer.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/effects/IodineEffect.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/effects/RadiationEffect.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/effects/VicinityEffect.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorClientExtensions.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorModel.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedEntityModel.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedModelBox.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicEntityModel.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicModelPart.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNNuclearExplosionSound.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/CNTabulaModelRenderUtils.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/explosion/NuclearExplosionEntity.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/SnowPowderRecipe.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/logistics/BigFluidStack.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/MultiblockHelpers.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/ReactorAssembler.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarm.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmEntity.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmSoundInstance.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/EventTriggerPacket.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorDebugDiagnostics.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorRunningSoundInstance.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumableTimer.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumptionCycleManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/FluidConsumable.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/IConsumable.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ItemConsumable.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/PatternReader.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorDisplayState.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorGoggleTooltipRenderer.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/AbstractReactorIOManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManagerI.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManagerI.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorIOManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManagerI.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManagerI.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManagerI.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultHeatService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultPersistenceService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/FluidConsumptionRateCalculator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IExplosionService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IFluidConsumptionRateCalculator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IHeatService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IPersistenceService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorAlarmCoordinator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorHeatUpdateCoordinator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorMeltdownMonitor.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorAlarmCoordinator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorHeatUpdateCoordinator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownExecutor.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownMonitor.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshot.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshotBuilder.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/cooler/ReactorCooler.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/fluid/CNReactorFluidTypes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameEntity.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameRenderer.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorGaugeOverrides.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInput.java rename src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/{item/ReactorRodInputEntity.java => ReactorInputEntity.java} (54%) create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputGenerator.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputInventory.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputMenu.java rename src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/{item/ReactorRodInputScreen.java => ReactorInputScreen.java} (81%) delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PersistentFluidLocks.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PlayerInteractReactorFluidInput.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInput.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputEntity.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputGenerator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/VirtualReactorInputFluid.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInput.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputGenerator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputInventory.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputMenu.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/VirtualReactorInputsItem.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/pattern/ReactorPattern.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorCooler/ReactorCooler.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultHeatCalculator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultOverheatController.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/EquilibriumState.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatBalance.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatManager.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IHeatCalculator.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IOverheatController.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/multiblock/rod/CNRodTypes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticles.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticlesData.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudModel.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudParticle.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/particles/SmallNuclearExplosionParticle.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/CNRadiationValues.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationBucketItem.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffect.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffectHandler.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationItem.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/IRadiationCapability.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationProvider.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/AbstractReactorStatDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/CoolerDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/FuelDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/HeatDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/LiquidLevelDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorDisplayConstants.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorGaugeRenderer.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSizeDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummary.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummaryDisplaySource.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/content/uraniumOre/UraniumOreItem.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancementBehaviour.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNTriggers.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CriterionTriggerBase.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/advancement/SimpleCreateNuclearTrigger.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/block/EventTriggerBlock.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/block/MultiDirectionalReactorBlock.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/damageTypes/CNDamageSources.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/data/CNBuilderTransformers.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNDeployingRecipeGen.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNShapelessRecipeGen.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNSnowPowderRecipeGen.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/ClientEvents.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEventClients.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/RodsTooltipHandler.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EasingHudOverlay.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EventTextOverlay.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/RadiationOverlay.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/events/possible code delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/item/RodsStats.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/mixin/SmithingTransformRecipeMixin.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/CameraAccessor.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/GameRendererMixin.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/RadiationHeartMixin.java rename src/main/java/net/nuclearteam/createnuclear/{infrastructure => foundation}/ponder/CNCreateNuclearPonderTags.java (83%) create mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderReactor.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/ClothTagHelper.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/ConfigValueResolver.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/InventoryHashUtil.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/Maths.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/NotifyUtil.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/foundation/utility/SimplexNoise.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/gametest/DefaultHeatCalculatorGameTest.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/gametest/ReactorInputFluidManagerGameTest.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/impl/registry/CreateNuclearRegistriesImpl.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CBiomeRestore.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplode.java create mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplose.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNotify.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRadiation.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CReactorHeat.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/scenes/CNPonderReactorScenes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacementModifiers.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/ConfigPlacementFilter.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMapping.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMappings.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationService.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNBiomes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNDensityFunctions.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseData.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseGeneratorSettings.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/IrradiatedBiomes.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/PersistentIrradiatedZones.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/BiomeTagRule.java delete mode 100644 src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/IrradiatedSurfaceRules.java delete mode 100644 src/main/resources/assets/createnuclear/lang/default/irradiated.json delete mode 100644 src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input.json delete mode 100644 src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input_vertical.json delete mode 100644 src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/item.json rename src/main/resources/assets/createnuclear/models/block/reactor/{rod_input/rod_input.json => input/block.json} (95%) rename src/main/resources/assets/createnuclear/models/block/reactor/{rod_input => input}/item.json (95%) delete mode 100644 src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input_vertical.json delete mode 100644 src/main/resources/assets/createnuclear/models/item/default_anti_radiation_boots/item.json delete mode 100644 src/main/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate/item.json delete mode 100644 src/main/resources/assets/createnuclear/models/item/default_anti_radiation_helmet/item.json delete mode 100644 src/main/resources/assets/createnuclear/models/item/default_anti_radiation_leggings/item.json delete mode 100644 src/main/resources/assets/createnuclear/particles/irradiated_particles.json delete mode 100644 src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud.json delete mode 100644 src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_explosion.json delete mode 100644 src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_smoke.json delete mode 100644 src/main/resources/assets/createnuclear/ponder/reactor/reactor_t1_ponder.nbt delete mode 100644 src/main/resources/assets/createnuclear/ponder/reactor/reactor_t2_ponder.nbt delete mode 100644 src/main/resources/assets/createnuclear/ponder/reactor/reactor_t3_ponder.nbt delete mode 100644 src/main/resources/assets/createnuclear/sounds/alarm/alarm.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/biomes/wasteland.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/large_nuclear_explosion.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/main.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion_rumble.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/ringing.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/rumble.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/explosion/shockwave.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/geiger/high.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/geiger/low.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/geiger/medium.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/reacteur/activation.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/reacteur/assemble_deassemble/motor_assemble.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/reacteur/assemble_deassemble/motor_disassemble.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/reacteur/running.ogg delete mode 100644 src/main/resources/assets/createnuclear/sounds/reacteur/shut_off.ogg delete mode 100644 src/main/resources/assets/createnuclear/textures/block/deepslate_nitrate_ore.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/deepslate_thorium_ore.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/nitrate_ore.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/raw_thorium_block.png create mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/casing/casing_inner.png create mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/casing/casing_top.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/controller/controller_panel_off.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/controller/controller_panel_on.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/controller/controller_panel_standby.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor/fluid_input/fluid_input.png rename src/main/resources/assets/createnuclear/textures/block/reactor/{rod_input/rod_input.png => input/input.png} (100%) delete mode 100644 src/main/resources/assets/createnuclear/textures/block/reactor_alarm.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/thorium_block.png delete mode 100644 src/main/resources/assets/createnuclear/textures/block/thorium_ore.png delete mode 100644 src/main/resources/assets/createnuclear/textures/entity/irradiated_cow.png delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/nitrogen_flow.png delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/nitrogen_flow.png.mcmeta delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/nitrogen_still.png delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/nitrogen_still.png.mcmeta delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/thorium_flow.png delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/thorium_flow.png.mcmeta delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/thorium_still.png delete mode 100644 src/main/resources/assets/createnuclear/textures/fluid/thorium_still.png.mcmeta delete mode 100644 src/main/resources/assets/createnuclear/textures/gui/advancements/backgrounds/background_advancement.png delete mode 100644 src/main/resources/assets/createnuclear/textures/gui/icons.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/anti_radiation_boots.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/black_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/blue_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/brown_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/black_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/blue_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/brown_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/cyan_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/gray_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/green_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/light_blue_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/light_gray_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/lime_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/magenta_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/orange_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/pink_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/purple_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/red_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/white_anti_radiation_chestplate.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/chestplates/yellow_anti_radiation_chestplate.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/cyan_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/default_anti_radiation_boots.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/default_anti_radiation_chestplate.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/default_anti_radiation_helmet.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/default_anti_radiation_leggings.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/default_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/gray_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/green_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/black_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/blue_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/brown_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/cyan_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/gray_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/green_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/light_blue_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/light_gray_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/lime_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/magenta_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/orange_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/pink_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/purple_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/red_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/white_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/helmets/yellow_anti_radiation_helmet.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/black_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/blue_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/brown_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/cyan_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/gray_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/green_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/light_blue_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/light_gray_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/lime_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/magenta_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/orange_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/pink_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/purple_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/red_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/white_anti_radiation_leggings.png create mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/leggings/yellow_anti_radiation_leggings.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/light_blue_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/light_gray_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/lime_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/magenta_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/orange_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/pink_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/purple_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/red_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/white_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/armors/yellow_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/biome_irradiation_extractor/empty.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/biome_irradiation_extractor/full.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/biome_irradiation_extractor/half.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/biome_irradiation_extractor/quarter.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/biome_irradiation_extractor/three_quarters.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/cooled_nitrogen_concentrate.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/nitrate.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/nitrogen_bucket.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/nitrogen_concentrate.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/raw_thorium.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/reinforced_glass_bottle.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/thorium_bucket.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/thorium_dust.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/thorium_ingot.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/thorium_nugget.png delete mode 100644 src/main/resources/assets/createnuclear/textures/item/thorium_rod.png delete mode 100644 src/main/resources/assets/createnuclear/textures/misc/bomb_flash.png delete mode 100644 src/main/resources/assets/createnuclear/textures/mob_effect/iodine.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/black_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/black_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/black_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/blue_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/blue_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/blue_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/brown_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/brown_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/brown_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/cyan_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/cyan_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/cyan_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/default_anti_radiation_suit.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/gray_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/gray_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/gray_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/green_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/green_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/green_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_blue_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_blue_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_blue_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_gray_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_gray_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/light_gray_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/lime_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/lime_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/lime_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/magenta_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/magenta_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/magenta_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/orange_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/orange_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/orange_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/pink_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/pink_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/pink_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/purple_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/purple_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/purple_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/red_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/red_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/red_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/white_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/white_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/white_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/yellow_anti_radiation_suit.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/yellow_anti_radiation_suit_layer_1.png create mode 100644 src/main/resources/assets/createnuclear/textures/models/armor/yellow_anti_radiation_suit_layer_2.png delete mode 100644 src/main/resources/assets/createnuclear/textures/particle/irradiated_particles.png delete mode 100644 src/main/resources/assets/createnuclear/textures/particle/nuclear_mushroom_cloud.png delete mode 100644 src/main/resources/data/createnuclear/structures/empty_platform.nbt delete mode 100644 src/main/resources/icon.png diff --git a/.gitignore b/.gitignore index 6fa41902f..504c6801c 100644 --- a/.gitignore +++ b/.gitignore @@ -19,7 +19,6 @@ build # other eclipse -.claude # run # Files from Forge MDK @@ -36,20 +35,13 @@ run/resources/ run/saves/ run/schematics/uploaded run/screenshots/ -run/servers.* -run/mods/ run/fabricloader.log run/options.txt run/usercache.json run/usernamecache.json -run/hs_err_pid*.log -run/imgui.init run/emi.json run/.mixin.out run/gametest run/logs +run/schematics run/server -run/client2 - -# LLM -.claude/* diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 88d9978c4..000000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "java.compile.nullAnalysis.mode": "disabled" - -} \ No newline at end of file diff --git a/AUDIT_ACTUEL.md b/AUDIT_ACTUEL.md deleted file mode 100644 index 051726919..000000000 --- a/AUDIT_ACTUEL.md +++ /dev/null @@ -1,279 +0,0 @@ -# Audit consolidé — CreateNuclearForge (branche V2-CorrectifAudit) - -**Réorganisation du 2026-07-12 (HEAD `cc532f83`).** Ce document a été restructuré pour ne conserver dans ses sections principales (§1 à §7) **que les problèmes encore ouverts**. Tout ce qui est corrigé, réfuté ou décidé (produit) a été déplacé en **§8 Mémoire**, avec le hash du commit correspondant quand il a pu être déterminé avec certitude par archéologie Git (`git log -S`, `git show`, `git blame`) — sinon c'est indiqué explicitement, sans hash inventé. - -**Méthodologie de cette réorganisation** : nouvelle relecture complète du code actuel (`src/main/java`, **292 fichiers**, hors `src/generated`/`src/main/resources`), croisée avec `AUDIT_V1.md`, les versions précédentes de ce fichier, et l'historique Git (`git log`, 1437 commits au total sur le dépôt) — aucun des deux audits n'a été pris comme vérité absolue : plusieurs points ont été revérifiés directement dans le code et un point s'est avéré **périmé** (voir §0). - -**Limite de couverture honnête** *(mise à jour 2026-07-18 après spot-check de `B7`/`B10`/`B17`/`B18`)* : sur les quatre bugs mineurs/robustesse d'`AUDIT_V1.md` autrefois marqués « ni confirmés ni infirmés », trois ont maintenant un statut tranché par lecture directe du code — **ne pas répéter cette relecture, le résultat est acté** : -- **B7** (`CNNoiseData.bootstrapRegistries`) — n'est plus un bug : `EROSION` est bien enregistré, la méthode n'est pas commentée. Voir §8.2. -- **B17** (`RodsTooltipHandler`) — n'est pas un bug : la condition de namespace est intentionnelle (commentaire explicite dans le fichier), pas une inversion par erreur. Voir §8.2. -- **B18** (`CNCClient`, clé TOML `screenShaking`) — corrigé, confirmé dans le code (§8.4) ; seul le hash du commit reste indéterminé. -- **B10** (`IrradiatedOverlayRendererVision`) — **reste un vrai bug ouvert**, seul survivant du lot : `mc.gameMode.getPlayerMode()` (l.23) est encore appelé sans garde sur `mc.gameMode`, qui peut être `null` pendant le chargement d'un monde ; le null-check ajouté depuis ne protège que `mc.player`, plus loin dans la méthode. Voir §1 pour le détail et le fix (une ligne). - -**Ce qui manque réellement encore** : la liste « mineurs » **non numérotée** d'`AUDIT_V1.md` §2 (mineurs/robustesse — `ReactorOutputEntity.tick()`, `ReactorInput.mobInteract` retournant `PASS`, `RenderHelper` champs cache jamais lus, etc.) n'a **jamais** été relue dans cette réorganisation et reste entièrement non vérifiée. Par ailleurs, une bonne partie des corrections d'`AUDIT_V1.md` (B1, B2, B4, B5, B9, B13, et l'essentiel des listes de dead code) sont antérieures à la fenêtre de commits explorée en détail (avant le 2026-06-24) : le code actuel confirme qu'elles sont bien appliquées, mais l'archéologie Git n'a pas retrouvé de hash certain pour la majorité d'entre elles — voir §8.4. - ---- - -## 0. Constat global - -Depuis la dernière consolidation (2026-06-28), le projet a continué d'évoluer : retrait de `IrradiatedBiomes.monsters()` (`8b0428e3`), blocage explicite (message "WIP") de l'apprivoisement des mobs irradiés (`261b26d8`), retrait complet de la mécanique de collier teignable jamais câblée (`17b29aa3`), correction de la tautologie `IHeat.isNotDanger` et ajout d'une hystérésis sur le heat appliqué aux sorties (`fb0897d3`, `a18038db`), guard NBT sur `ReactorFrameDisplayManager.write` (`381c7a5f`), déduplication complète de `drawGauge` via `ReactorGaugeRenderer`/`AbstractReactorStatDisplaySource` (`35e474e3`, `d0da13d1`, `a8b6b23f`), traduction en anglais des scènes Ponder (`3be6252a`), et — le jour même de cette réorganisation — remplacement de la sentinelle de taille/accès positionnels fragiles de `ReactorSummaryDisplaySource` par un `record ReactorSummary` typé (`cc532f83`), qui clôt du même coup le dernier commentaire français de ce fichier. Détail de chaque correction en §8.1. - -**Point périmé trouvé lors de cette réorganisation** : l'item « Flicker vitesse de sortie en fin de ressources » était encore documenté en §1 comme un bug entièrement ouvert, proposant comme correction l'ajout d'un champ `lastAppliedOutputHeat` avec hystérésis sur `RPM_DIVIDER/2. **Cette correction a en réalité déjà été appliquée** par le commit `a18038db` (2026-07-05) — vérifié par lecture directe : `ReactorControllerBlockEntity.java:62` (champ `lastAppliedOutputHeat`), `:430-433` (comparaison au seuil et appel à `rotateOutputs` avec la valeur bufferisée). Le commit lui-même documente que le point reste partiellement ouvert : l'oscillateur `overHeat` sous-jacent (+1/-2 par tick) n'est pas supprimé, seul son symptôme visible (flicker RPM) est amorti, et le seuil de l'hystérésis n'a pas été validé en jeu. L'item est donc reclassé en §1 comme **partiellement résolu, validation en jeu restante** plutôt que comme bug non traité — voir §1. - -**Nouveau point d'audit ajouté** : qualité et langue de la documentation du code (Javadoc, commentaires, noms de symboles) — voir §6. Un premier signal existait déjà dans `AUDIT_V1.md` §5 (« commentaires FR/EN mêlés ») mais n'avait jamais été centralisé ni suivi comme item d'audit à part entière. - -**Mise à jour post-réorganisation (2026-07-13)** : première entame concrète de la dette de tests recommandée en priorité 1 du §7. Deux suites `GameTest` (sous `src/main/java/.../gametest/`, pas `src/test`) ont été ajoutées : `ReactorInputFluidManagerGameTest` (`200df62f`, antérieur à cette réorganisation mais jamais documenté ici — omission corrigée maintenant) et `DefaultHeatCalculatorGameTest` (`498f9dc6`). Cette dernière a été écrite après un aller-retour méthodologique instructif : une première tentative en JUnit pur + Mockito (mocker `Item`/`ItemStack`/`Level`) a été rejetée — Mockito doit exécuter le vrai bloc d'initialisation statique de ces classes Minecraft pour construire le proxy, et celui-ci échoue hors d'un jeu réellement démarré (`MockitoException: Cannot instrument class net.minecraft.world.item.Item ... could not be initialized`), ce qui **confirme empiriquement** pourquoi ce projet doit s'appuyer sur `GameTest` plutôt que sur du JUnit isolé pour tout ce qui touche aux types Minecraft/Forge. Détail en §8.1. - -La dette la plus structurelle reste **l'absence de tests sur la majorité du code** (`src/test` toujours vide — la mécanique JUnit classique n'est pas utilisable ici, voir ci-dessus — et seuls deux composants ont une suite `GameTest`) — précisément là où des bugs/incohérences silencieux (sur-extraction fluide, ex-tautologie `IHeat`, scan non court-circuité, doc devenue obsolète sans que personne ne le remarque) survivent à plusieurs passes d'audit. Le pattern matcher (`ReactorPattern`/`CNMultiblock`) et `PersistentFluidLocks` restent entièrement sans couverture. Voir §3 et §7. - -**Mise à jour (`ae1e394d`, 2026-07-13)** : nettoyage de trois points du §4/§7 en une seule fois — retrait complet des références commentées à la propriété `SPEED` de `ReactorOutput` (§4/§7 item 7, désormais clos), retrait de `BLUE_ICE` et de `addDefaultSoftDisks()`/`VOID_START_PLATFORM` d'`IrradiatedBiomes` (§4 « worldgen irradié », alors partiellement clos), et suppression de `OriginalBiomeLookup.java`, une classe de résolution de biome jamais appelée qui n'avait encore jamais été repérée par cet audit. Détail en §8.1. - -**Mise à jour (`6bc20956`, 2026-07-13)** : suite immédiate de la précédente — retrait de `NETHER_CAVE` (dernier contenu vanilla sans rapport identifié dans `IrradiatedBiomes`, via la suppression de `addDefaultIrradiatedOres()` et de son unique site d'appel), régénération de `irradiated_land.json` (bloc `carvers` désormais vide). **L'item « worldgen irradié » du §4/§7 est donc maintenant entièrement clos** ; seul reste `CNNoiseGeneratorSettings.java:25` (bloc de remplissage `STEEL_BLOCK`) côté §4. Détail en §8.1. - -**Mise à jour (`e7900959`, 2026-07-13)** : deux items de plus tranchés. (1) `CreateNuclearJEI` : le champ statique mutable `Categories` (§2 mineurs item 5) devient un champ d'instance `allCategories`, enfilé explicitement dans `CategoryBuilder` — le risque de contamination entre instances lors d'un reload JEI est éliminé ; au passage, `IJeiRuntime` est désormais exposé via `onRuntimeAvailable`. (2) Le `FIXME` de `CNStandardRecipeGen.java:226` (§4/§6/§7) est tranché : retiré, décision actée que les catégories de recette restent des marqueurs plutôt que des sections. Détail en §8.1. - -**Mise à jour (`9e8abe92`, 2026-07-14)** : traduction en anglais des 9 des 10 fichiers restants du §6 (items 6, 7, 8, 10, 11, 12, 13, 14, plus l'essentiel de 5 — `CNFluids.java` traduit en intégralité). Seul l'item 9 (`NuclearExplosionEntity.java:45,50`, compat Alex's Caves) reste ouvert, non touché par ce commit. Au passage, un fichier jusque-là non repéré par cet audit a été trouvé avec un commentaire français résiduel : `CNEntityType.java:76`. Détail en §6 et §8.1. - -**Mise à jour (2026-07-14, pas de commit — décision documentaire seule)** : le point §2.4/§7 priorité 5 (« harmoniser le mode d'affichage du heat de `ReactorSummaryDisplaySource` avec `HeatDisplaySource` ») est **réfuté et clos** après analyse approfondie — ce n'est pas une incohérence mais un choix de design volontaire du widget de synthèse (`fluid` et `heat` en jauge par défaut car plus lisibles en vue d'ensemble, `fuel`/`cooler` en texte), sans rapport avec le mode par défaut de l'affichage individuel `HeatDisplaySource`. Détail complet en §8.2. - -**Mise à jour (2026-07-14, pas de commit — décision documentaire seule)** : le point §3/§7 item 9 (« `RadiationCapability.tickRadiation` pour les `LivingEntity` non-joueurs : pas de dirty-check d'inventaire ») est **analysé en détail et le statu quo est confirmé** — le scan mob (6 slots, lookups `HashMap` O(1) via `RadiationRegistry`) est trop petit pour qu'un hash façon joueur (41 slots) soit rentable ; le reste de `tickRadiation` (biome, attribut, `MobEffectInstance`) domine probablement le coût par mob de toute façon. Détail complet en §8.2. - -**Mise à jour (`eeffe4fe`, 2026-07-14)** : les 2 derniers fichiers du §6 sont traduits — `NuclearExplosionEntity.java` (commentaires de compat Alex's Caves : typage `Object` du handler, instanciation conditionnelle, immunité Raycat/Tremorzilla, et clarification du commentaire déjà anglais mais devenu incohérent sur `destroyBlock`) et `CNEntityType.java` (commentaire sur le renderer no-op de l'entité d'explosion, reformulé pour expliquer que c'est la particule qui fait le rendu visuel). **Confirmé par grep sur tout `src/main/java` (292 fichiers) : plus aucun caractère accentué français, §6 est intégralement clos.** Détail en §6 et §8.1. - -**Mise à jour (`691dfb13`, 2026-07-26 — suite à une comparaison ligne à ligne avec le calculateur communautaire du wiki et le cahier des charges de balance)** : trois points de `DefaultHeatCalculator`/`DefaultOverheatController` touchés en un seul commit : -1. **Lecture du pattern simplifiée** : `computeHeat` lit désormais le pattern via `ReactorBluePrintItem.getItemStorage(...)` (un `ItemStackHandler`) au lieu de reparser manuellement les tags NBT bruts `"pattern"`/`"Items"` — supprime une désérialisation dupliquée, aligne sur l'accesseur déjà utilisé par `PatternReader` et les fixtures `GameTest`. -2. **Plancher à 0 ajouté** : `return Math.max(0, heat + overHeat);` — la chaleur ne peut plus devenir négative (elle le pouvait avant, contrairement au calculateur de référence qui applique `Math.max(0, totalHeat)`). -3. **`ReactorFluidType.maxHeat()` n'est plus un champ mort** : un paramètre `previousHeat`/`currentHeat` a été enfilé dans toute la chaîne (`IHeatService`, `DefaultHeatService`, `HeatManager`, `IOverheatController`, `DefaultOverheatController`, `IReactorHeatUpdateCoordinator`, `ReactorHeatUpdateCoordinator`, `ReactorControllerBlockEntity`) pour que `DefaultOverheatController` déclenche la dérive de `overHeat` dès que la chaleur dépasse le `maxHeat` du fluide actif, en plus des conditions préexistantes (pénurie de fluide, ratio de chaleur positif). - -**Asymétrie fuel/cooler corrigée (2026-07-26, pas encore commitée séparément au moment de cette réorganisation) :** la branche cooler de `DefaultHeatCalculator.computeHeat` scanne désormais ses propres voisins fuel — `TypeRodPredicate.isCooled(rod) && TypeRodPredicate.isFuel(neighborRod)` → `heat += neighborRod.baseRodHeat() × rod.proximityRodHeat()`, conforme au cahier des charges externe (« Graphite extra: -1/4Q **of the heating rod** ») et au calculateur JS de référence. Vérifié sur un exemple concret (pattern `[G,T,G]/[T,U,T]/[G,T,G]`) : `128` des deux côtés (calculateur JS et jeu). Reste à faire : `DefaultHeatCalculatorGameTest` (§3) n'a pas encore été mis à jour et continue d'asserter l'ancien comportement (division) — le test doit être réécrit pour matcher la formule actuelle avant de pouvoir clore ce point. - ---- - -## 1. 🐛 Bugs confirmés ouverts - -| Réf. | Fichier:ligne | Gravité | Détail (revérifié 2026-07-12) | -|---|---|---|---| -| **ReactorInputFluidManager — sur-extraction** | `controller/manager/ReactorInputFluidManager.java:137-155` | 🟠 | `fluidNeeded` (paramètre de `extractFluids`) n'est **toujours jamais décrémenté** entre handlers (l.146-151) → chaque handler de la boucle tente d'extraire le besoin complet, sur-extraction possible avec plusieurs inputs. `if (toExtract > 1)` (l.147) ignore toujours les extractions de 1 unité. **Détail supplémentaire trouvé cette revue** : la garde `if (fluidNeeded <= 0) break;` (l.151) est **du code mort** — `fluidNeeded` n'étant jamais réassigné dans la boucle, cette condition ne peut être vraie que si le paramètre est déjà ≤ 0 en entrée. Toléré aujourd'hui (tank mono-slot en pratique), reste une violation de contrat latente. | -| **Flicker vitesse de sortie en fin de ressources — partiellement corrigé, validation en jeu restante** *(reclassé le 2026-07-12, code de correction déjà présent depuis `a18038db`, 2026-07-05)* | `content/multiblock/reactorLogic/DefaultOverheatController.java:13-30` + `controller/ReactorControllerBlockEntity.java:430-433` | 🟡 | `overHeat` continue de s'incrémenter de `+1`/`-2` à un rythme régulier, indépendamment du réapprovisionnement — l'oscillateur de base n'a **pas** été supprimé. Mais son symptôme (bascule de vitesse de sortie entre `0` et `X`) est désormais amorti : `ReactorControllerBlockEntity` ne réapplique `rotateOutputs` que si `\|heat - lastAppliedOutputHeat\| >= RPM_DIVIDER/2` (code vérifié présent). **Reste ouvert** : (1) valider en jeu que ce seuil élimine réellement la perception du flicker en fin de ressources (le commit d'origine le signale lui-même comme non validé) ; (2) décider si l'oscillateur `overHeat` doit être revu à la racine ou si l'hystérésis en aval suffit durablement. | -| **`IrradiatedOverlayRendererVision` — NPE potentielle sur `mc.gameMode`** *(ex-`B10` d'`AUDIT_V1.md`, spot-check 2026-07-18)* | `foundation/events/overlay/IrradiatedOverlayRendererVision.java:23` | 🟡 | `GameType playerMode = mc.gameMode.getPlayerMode();` est appelé **sans garde** sur `mc.gameMode`, qui peut être `null` (écran de chargement, entre la déconnexion et la reconnexion). Le null-check sur `mc.player` a bien été ajouté depuis (l.31, `if (localPlayer == null) return;`), mais **après** l'accès à `mc.gameMode` — donc partiellement corrigé seulement. Fix trivial : ajouter `if (mc.gameMode == null) return;` avant la ligne 23. | ---- - -## 2. 🆕 Autres problèmes ouverts (hors radiation, hors documentation) - -### 🟠 Important — performance résiduelle du scan multiblock - -1. **Scan géométrique du contrôleur : court-circuit incomplet (`findController`)** — **seul sous-point encore ouvert de ce chantier** (garde client-side et double scan à la casse : corrigés, voir §8.1). - `ReactorPattern` n'a qu'**une seule** boucle de scan partagée (`scanControllerCandidates`, `ReactorPattern.java:40-56`) sur ~3971 positions (`y∈[-5,+5]`, `x,z∈[-9,+9]`), filtrée par `isInReactorRange`. Le court-circuit (`return true` dans le visiteur dès qu'un contrôleur pertinent est trouvé) n'existe que dans **`findControllerPos`** (`ReactorPattern.java:73-94`, utilisé par `MultiblockHelpers` → `ReactorOutput`/`ReactorRodInput`/`ReactorFluidInput`/`ReactorAlarm`). **`findController`** (`ReactorPattern.java:58-71`, revérifié 2026-07-12 : le visiteur retourne toujours `false` l.69), appelé **directement** par `ReactorCasing.java`, `ReactorCooler.java` et `ReactorFrame.java`, continue de parcourir les ~3971 positions restantes même après avoir traité le contrôleur pertinent. `ReactorCasing` étant le bloc le plus posé/cassé (coque du réacteur), c'est le chemin le plus chaud du projet et il n'est **toujours pas** optimisé. - Fix trivial inchangé : faire retourner `inRange` au lieu de `false` dans le visiteur de `findController`, comme c'est déjà fait dans `findControllerPos`. **Reste la priorité n°1 du projet** (perf uniquement désormais, plus une question de correction — voir §7). - - **Point résiduel mineur, non corrigé, non confirmé comme bug** : `ReactorOutput` (propriété `DIR`) et `ReactorFluidInput` (propriété `FACING`) ont une propriété mutable mais leur `onRemove` n'a pas la garde `!state.is(newState.getBlock())` présente sur `ReactorAlarm`/`ReactorFrame`. Aucun chemin connu ne change `DIR`/`FACING` via `setBlock` sans remplacer le bloc, mais à surveiller si une interaction clé/wrench déclenche un jour un retrait/réenregistrement non désiré. - -### 🟠 Importants - -2. ~~`DefaultHeatCalculator.computeHeat` — asymétrie fuel/cooler~~ — **résolu** (2026-07-26, comparaison avec le cahier des charges/calculateur JS du wiki) : le cooler scanne désormais ses propres voisins fuel (symétrique au fuel), avec `TypeRodPredicate.isCooled(rod) && TypeRodPredicate.isFuel(neighborRod)` → `heat += neighborRod.baseRodHeat() × rod.proximityRodHeat()`, conforme au ratio -1/4 du cahier des charges (« Graphite extra: -1/4Q of the heating rod ») et déjà présent en config (`graphiteProximityMalus=-0.25`). Vérifié sur le pattern `[G,T,G]/[T,U,T]/[G,T,G]` : `128` des deux côtés (JS et Java). ~~**Boucle O(81) de recherche de position**~~ — **résolu** (`37613d8b`, 2026-07-26) : voir §8.1. - - `DefaultHeatCalculatorGameTest` (§3) mis à jour en conséquence : le test 3 (`fuelCoolerMix_coolerScansItsOwnFuelNeighborsSymmetrically`) asserte désormais la formule actuelle, et un nouveau test 4 (`threeByThreeDiamond_matchesWikiCalculatorReferenceValue`) vérifie un pattern 3×3 complet contre la valeur de référence du calculateur JS du wiki (`128` avec la balance par défaut). - -3. ~~`ReactorSummaryDisplaySource` — sentinelle de taille + accès positionnel fragiles~~ — **résolu**, voir §8.1 (`cc532f83`). - -4. ~~`ReactorSummaryDisplaySource.formatValue` — incohérence de mode~~ — **réfuté, clos sans code** (2026-07-14) : voir §8.2. - -### 🟡 Mineurs - -5. ~~**`CreateNuclearJEI`** — champ statique mutable `Categories`~~ — **résolu** (`e7900959`, 2026-07-13) : converti en champ d'instance `allCategories`, enfilé explicitement dans `CategoryBuilder`. Voir §8.1. -6. **`CNPonderReactorScenes.showReactorStructure`** — boucle triple (~11×13×13) avec comparaisons positionnelles ; coût ponctuel (ouverture ponder), remplaçable par une `Map` précalculée. - -### ⏸️ Worldgen minerais — écarts relevés, **mis en attente à la demande de l'utilisateur (2026-07-25), à trancher plus tard** - -7. **Nitrate Ore — mécanisme de drop incohérent avec Thorium/Uranium** ([nitrate_ore.json](src/generated/resources/data/createnuclear/loot_tables/blocks/nitrate_ore.json)) : utilise la formule vanilla `minecraft:ore_drops` (bonus probabiliste façon charbon/diamant, count de base implicite = 1) alors que Thorium et Uranium utilisent `set_count` (min/max explicite) + `uniform_bonus_count` (`bonusMultiplier` fixe). Pas forcément un bug — peut être volontaire — mais rupture de pattern à trancher : soit harmoniser Nitrate sur le même système, soit documenter que c'est intentionnel. - ---- - -## 3. 🏗️ Architecture — points encore ouverts - -| Point | État (revérifié 2026-07-13) | -|---|---| -| **`src/test`** | ❌ **Toujours vide** — confirmé, 0 fichier `.java` sous `src/test`. Sans objet ici : les types Minecraft/Forge (`Item`, `ItemStack`, `Level`, registres du mod) ne s'initialisent pas hors d'un jeu démarré (confirmé empiriquement en tentant de les mocker via Mockito, voir §0/§8.1), donc la couverture de ce projet passe nécessairement par `GameTest`, pas par du JUnit isolé sous `src/test`. | -| **Couverture `GameTest` (`src/main/java/.../gametest/`)** | 🟡 **Partielle, 2 composants sur 4 couverts** — `ReactorInputFluidManager` (`200df62f`) et `DefaultHeatCalculator.computeHeat` (`498f9dc6`, mis à jour le 2026-07-26 : le test 3 a été réécrit en `fuelCoolerMix_coolerScansItsOwnFuelNeighborsSymmetrically` pour matcher la formule actuelle, et un test 4 `threeByThreeDiamond_matchesWikiCalculatorReferenceValue` a été ajouté, vérifiant un pattern 3×3 complet contre la valeur de référence du calculateur JS du wiki) ont une suite dédiée. Le pattern matcher (`ReactorPattern`/`CNMultiblock`, §2.1) et `PersistentFluidLocks` (§8.2) restent **entièrement sans test** — ce sont les deux items restants de la priorité 1 du §7. | -| **`ReactorFluidType.maxHeat()`** | ~~Champ mort côté logique métier~~ — **n'est plus mort** depuis `691dfb13` : consommé par `DefaultOverheatController.updateState` (via le nouveau paramètre `currentHeat`/`previousHeat` enfilé depuis `ReactorControllerBlockEntity`) pour déclencher la dérive de surchauffe dès que la chaleur dépasse le seuil du fluide actif, comportement demandé par le cahier des charges externe (« if HEAT > MAX HEAT of the liquid : as if it has no liquid »). `nitrogen`/`water` gardent leurs valeurs `8196`/`2048` (confirmées conformes au cahier des charges, pas des coquilles). | -| **`RadiationCapability.tickRadiation` pour `LivingEntity` non-joueurs** | ⚠️ **Statu quo recommandé, pas un bug** — recalcule `computeItemRadiation` à chaque tick sans dirty-check (le hash d'inventaire existant, `InventoryHashUtil`, ne couvre que le joueur). Compromis assumé explicitement dans le commit `9ded502c` (« no equivalent inventory to diff against »), et **réévalué en détail le 2026-07-14 sans changement de code** — analyse complète en §8.2. Résumé : le scan mob ne porte que sur 6 stacks (`getArmorSlots()` + main + offhand), résolus par de simples lookups `HashMap` dans `RadiationRegistry`, contre 41 slots hashés côté joueur ; recalculer un hash sur seulement 6 slots coûterait à peu près autant que le calcul direct qu'il est censé éviter, donc reproduire la technique du joueur n'apporterait aucun gain net. Le reste de `tickRadiation` (résolution de biome, lecture d'attribut, gestion de `MobEffectInstance`) s'exécute de toute façon inconditionnellement à chaque tick pour chaque `LivingEntity`, dirty-check ou non — cette boucle de 6 lookups n'est donc probablement pas le poste dominant du coût par mob. À reconsidérer **uniquement** si un profiling réel identifie cette boucle comme point chaud (ex. `IRadiationSource` tiers coûteux, ou densité extrême de mobs équipés) — dans ce cas la piste recommandée n'est pas un hash mais une invalidation événementielle (`LivingEquipmentChangeEvent`), seule approche qui changerait réellement l'ordre de grandeur du coût amorti. | - -*(Les autres affirmations historiques de cette table — inversion `api/`, deux frameworks multiblock concurrents, god class `ReactorControllerBlockEntity`, coordinateur de verrou fluide dédié — ont toutes été réfutées ou closes ; voir §8.2.)* - ---- - -## 4. 🧹 Dead code & features inachevées — reste à faire - -> **⚠️ Faux positifs à NE PAS supprimer** : `CNTabulaModelRenderUtils` (rendu vivant du champignon atomique) ; `ReactorOutputEntity.outputPos` (lu/écrit en NBT) ; `setRotateAngle` (appelé par `NuclearMushroomCloudModel`). - -**Code commencé puis abandonné (hygiène de fin de PR)** -- ~~`content/multiblock/output/ReactorOutput.java` — propriété `SPEED` toujours entièrement commentée~~ — **résolu** (`ae1e394d`, 2026-07-13) : les références commentées (`//builder.add(SPEED);`, `/*.setValue(SPEED, 0)*/`) ont été retirées, voir §8.1. -- ~~`foundation/data/recipe/CNStandardRecipeGen.java:226` — `// FIXME 5.1 refactor - recipe categories as markers...`~~ — **résolu** (`e7900959`, 2026-07-13) : commentaire retiré, décision actée que les catégories de recette restent des marqueurs plutôt que des sections. Voir §8.1. - -**Worldgen « irradié » — template non terminé** -- ~~`IrradiatedBiomes.java` ajoutait du contenu vanilla sans rapport (`BLUE_ICE`, `NETHER_CAVE`, `VOID_START_PLATFORM`)~~ — **résolu** (`ae1e394d` puis `6bc20956`, 2026-07-13) : les trois ont été retirés (dont `addDefaultIrradiatedOres()`/`addDefaultSoftDisks()` et leurs sites d'appel), `irradiated_land.json` régénéré avec un bloc `carvers` vide. Le fichier ne référence plus que ses propres effets de biome (couleurs, sons, particules). Voir §8.1. -- `CNNoiseGeneratorSettings.java:25` utilise toujours `STEEL_BLOCK` comme bloc de remplissage par défaut du biome irradié — seul point restant de cet item. -- **Point trouvé lors de cette mise à jour, non corrigé** : `IrradiatedBiomes.java:5,6,10` — les imports `Carvers`, `MiscOverworldPlacements` et `GenerationStep` sont devenus morts suite au retrait de leurs derniers usages par `6bc20956` (confirmé par grep : plus aucune référence dans le fichier). Trivial, à nettoyer au prochain passage. - -*(Le dead code pur déjà retiré — `SimpleMultiBlockPattern.test()`, `IrradiatedBiomes.monsters()`, le nettoyage de `PlayerInteractReactorFluidInput`, les fichiers de debug `run/`, la mécanique de collier teignable, `OriginalBiomeLookup.java` — est en §8.1/§8.3 avec ses hash.)* - ---- - -## 5. ⚡ Performance — synthèse des points ouverts - -| Point | État | Réf. | -|---|---|---| -| `ReactorPattern.findController` (Casing/Cooler/Frame) : **ne court-circuite jamais**, scanne ~3971 positions à chaque pose/casse même après avoir trouvé le contrôleur | ❌ **non corrigé** — chemin le plus chaud, dernier point ouvert du chantier scan multiblock | §2.1 | -| `DefaultHeatCalculator.computeHeat` : neighbor lookup en O(1) (`NEIGHBORS_BY_SLOT`, `37613d8b`) | ✅ **corrigé, clos** | §2.2/§8.1 | - -*(`findControllerPos`, la garde `isClientSide`, le double scan à la casse, et `clearLockIfAllInputsEmpty` sont déjà sains/corrigés — voir §8.1/§8.2.)* - ---- - -## 6. 📝 Documentation — langue et clarté du code (nouveau point d'audit, 2026-07-12) - -**Périmètre** : `src/main/java` (292 fichiers), recherche des commentaires/Javadoc non rédigés en anglais et des cas ambigus/incomplets indépendamment de la langue. Méthodologie : recherche par caractères accentués + vocabulaire français typique des commentaires, puis lecture manuelle des occurrences trouvées. - -**Décompte global** *(mis à jour 2026-07-14, commit `eeffe4fe`)* : **0 fichier sur 292** ne contient plus de français détectable. **Item entièrement clos** — confirmé par grep sur caractères accentués français, sur tout `src/main/java`, 2026-07-14 : zéro résultat. Aucun symbole de code (nom de classe, méthode, champ) n'avait de toute façon jamais été trouvé en français — le problème était localisé aux commentaires/Javadoc, désormais traités. - -**Historique de la résolution** (du plus ancien au plus récent) : -- Les 4 cas de Javadoc public bilingue, seul sous-item classé 🟢 prioritaire au tour précédent, ont été traduits en intégralité (commit `3be6252a`, *"style: translate French comments and Javadoc to English in VicinityEffect and CNPonderReactorScenes"*) : - - `content/effects/VicinityEffect.java:53-57` — Javadoc de `onContaminate(LivingEntity)` entièrement repassée en anglais. - - `infrastructure/ponder/scenes/CNPonderReactorScenes.java` — fichier intégralement traduit : Javadoc de `Positions` (l.32), de `STATIC_POS` (l.50, reformulée en documentation stable plutôt qu'en note à soi-même) et de `positionsFor` (l.85), plus tous les commentaires inline restants (pedestal, exemples T1/T2/T3, fallback, positions devant/derrière/droite). Ce fichier ne contient plus aucun français. -- Les 3 commentaires français de garde défensive (« Sécurité Triple-Check ») de `content/redstone/displayLink/source/ReactorSummaryDisplaySource.java:51,75,114` (ex-item 9) ont disparu avec le refactor `ReactorSummary` (commit `cc532f83`) : le fichier a été réécrit avec un Javadoc anglais complet sur la classe et chacune de ses méthodes publiques/privées, et ne contient plus aucun français. -- **9 fichiers traduits par `9e8abe92` (2026-07-14)** : `CNFluids.java` (commentaires uranium/azote liquide/thorium, dont la compensation de désync gel/dégel), `ClientEvents.java` (Javadoc tick handling + tremblement de caméra, reformulés plutôt que simplement traduits), `foundation/mixin/RadiationHeartMixin.java`, `foundation/mixin/CameraAccessor.java`, `foundation/mixin/GameRendererMixin.java`, `content/decoration/palettes/PalettesVariantEntry.java` (le commentaire français hébergeait en fait un bloc `if` mort — supprimé plutôt que traduit), `content/equipment/armor/AntiRadiationArmorItem.java`, `content/redstone/displayLink/source/ReactorSizeDisplaySource.java`, `infrastructure/worldgen/biome/IrradiatedBiomes.java` (5 commentaires de couleurs de biome). -- **Les 2 derniers fichiers traduits par `eeffe4fe` (2026-07-14)** : `content/explosion/NuclearExplosionEntity.java` (compat Alex's Caves — typage `Object` du handler pour éviter une dépendance dure au classpath du mod, instanciation conditionnelle, immunité Raycat/Tremorzilla ; au passage, un commentaire déjà en anglais mais devenu incohérent — décrivait un paramètre `false` alors que le code appelait `destroyBlock(pos, true)` — a été réécrit pour décrire fidèlement le comportement actuel) et `CNEntityType.java:76` (commentaire sur le renderer no-op de l'entité d'explosion, reformulé pour expliquer que c'est la particule de champignon atomique qui fait le rendu visuel, pas le renderer). - -Tous ces fichiers sont déplacés dans la table de §8.1. - -**Ambiguïtés/incomplétudes indépendantes de la langue relevées au passage** : -- ~~`CNPonderReactorScenes.java:50,90`~~ — **résolu** (`3be6252a`) : les deux Javadoc ont été reformulées en documentation stable en même temps que leur traduction (voir ci-dessus). -- ~~`ReactorOutput.java` (§4) — propriété `SPEED` commentée sans décision documentée~~ — **résolu** (`ae1e394d`, 2026-07-13) : les références commentées ont été retirées (revérifié par grep, plus aucune trace de `SPEED` dans le fichier), voir §4/§8.1. -- ~~`CNStandardRecipeGen.java:226` (§4) — `FIXME` en anglais mais sans contexte suffisant pour un tiers~~ — **résolu** (`e7900959`, 2026-07-13), voir §4/§8.1. - -**Pattern récurrent** : le point « commentaires FR/EN mêlés » déjà signalé dans `AUDIT_V1.md` §5 (sans jamais être suivi comme item séparé) **est désormais entièrement clos** — plus aucun fichier de `src/main/java` ne contient de français. Le sous-ensemble concerné est passé de 14 fichiers (premier décompte de ce document) à 0, en plusieurs vagues (`3be6252a`, `cc532f83`, `9e8abe92`, `eeffe4fe`). - -**Priorité recommandée** : ✅ **clos.** Aucun symbole d'API n'a jamais été en français, donc aucun impact sur la lisibilité des signatures n'a jamais existé pour un contributeur externe. **Suivi** : à re-scanner ponctuellement (grep accents sur `src/main/java`) si un doute apparaît sur un futur commit, mais aucune action de fond restante. - ---- - -## 7. 🗺️ Feuille de route — priorités justifiées - -Classement par catégorie et impact, du plus important au plus cosmétique. Chaque item renvoie à sa section de détail. - -**1. Dette technique structurelle (racine des bugs silencieux récurrents)** -- ~~`DefaultHeatCalculator`~~ — **fait**, `GameTest` ajoutée (`498f9dc6`, voir §3/§8.1). `ReactorInputFluidManager` avait déjà sa suite (`200df62f`, jusqu'ici non documentée dans cet audit). **Reste** : le pattern matcher (`ReactorPattern`/`CNMultiblock`) et `PersistentFluidLocks` (§3). **Justification** : c'est la cause profonde identifiée à travers *tous* les tours d'audit successifs — sur-extraction fluide, tautologie `IHeat`, scan non court-circuité, et une section d'audit devenue obsolète sans que personne ne s'en aperçoive (§0) sont tous des symptômes du même problème : rien ne vérifie automatiquement le comportement. C'est l'investissement qui a le plus gros effet de levier sur la fiabilité future, mais c'est aussi le plus long — d'où la priorité 1 malgré l'absence d'urgence immédiate. Deux composants sur quatre sont maintenant couverts. - -**2. Optimisation — chemin le plus chaud du projet** -- `ReactorPattern.findController` : faire retourner `inRange` au lieu de `false` dans le visiteur, pour court-circuiter comme `findControllerPos` le fait déjà (§2.1, §5). **Justification** : fix d'une ligne, risque quasi nul, et c'est le chemin appelé par le bloc le plus posé/cassé du jeu (`ReactorCasing`). Rapport gain/effort le plus élevé du projet — reste la priorité n°1 « quick win » malgré son classement en position 2 ici (juste après la dette de tests, qui est stratégiquement plus importante mais bien plus longue à traiter). - -**3. Bug fonctionnel latent — robustesse d'un contrat interne** -- `ReactorInputFluidManager` : décrémenter `fluidNeeded` entre handlers, gérer `toExtract == 1`, retirer la garde morte `fluidNeeded <= 0` (§1). **Justification** : viole silencieusement le contrat d'extraction ; toléré aujourd'hui uniquement parce que la configuration actuelle (tank mono-slot) masque le symptôme — un futur ajout de multi-input fluide le ferait resurgir sans avertissement. - -**4. Validation en jeu — correction déjà codée** -- Flicker de vitesse de sortie : valider en jeu que le seuil d'hystérésis (`RPM_DIVIDER/2`, déjà implémenté par `a18038db`) supprime bien la perception du flicker en fin de ressources (§1). **Justification** : le code est déjà en place, il ne reste qu'une validation de gameplay — priorité basse en effort mais à ne pas oublier, sinon le point restera indéfiniment « à moitié fait » dans la mémoire du projet. - -**5. Amélioration de conception / cohérence UX** -- ~~`ReactorSummaryDisplaySource.formatValue` : harmoniser le mode d'affichage du heat avec `HeatDisplaySource`~~ — **réfuté, clos sans code** (2026-07-14) : voir §8.2. -- ~~`ReactorSummaryDisplaySource` : remplacer l'accès positionnel fragile~~ — **fait**, voir §8.1 (`cc532f83`). - -**6. Optimisation mineure (gain faible, risque nul)** -- ~~`DefaultHeatCalculator` : précalculer une map slot→position pour éliminer la boucle O(81) restante~~ — **fait**, commit `37613d8b` (§2.2/§8.1) : `NEIGHBORS_BY_SLOT` (`Map>`) précalculée une fois via `buildNeighborsBySlot()`, `computeHeat` fait désormais un lookup direct au lieu de rescanner les 81 cellules de la grille par rod. -- `CNPonderReactorScenes.showReactorStructure` : remplacer la boucle triple par une map précalculée (§2.6). Coût ponctuel (ouverture d'un ponder), gain marginal. - -**7. Nettoyage / décisions produit à trancher** -- ~~`ReactorOutput.SPEED` : retirer les commentaires ou décider de réactiver la propriété~~ — **fait**, commit `ae1e394d` (§4/§8.1). -- ~~`CNStandardRecipeGen.java:226` : trancher le `FIXME` sur les catégories de recette~~ — **fait**, commit `e7900959` (§4/§8.1). -- ~~Worldgen « irradié » : retirer le contenu vanilla sans rapport (`BLUE_ICE`, `NETHER_CAVE`, `VOID_START_PLATFORM`)~~ — **fait**, commits `ae1e394d` puis `6bc20956` (§4/§8.1). Reste : choisir un bloc de remplissage cohérent à la place de `STEEL_BLOCK` dans `CNNoiseGeneratorSettings.java:25` (§4). **Justification** : n'affecte que la cohérence thématique du biome, pas de risque technique. - -**8. Documentation (nouveau, §6)** -- ~~Traduire en anglais les 4 cas de Javadoc public bilingue (`VicinityEffect.java`, `CNPonderReactorScenes.java` ×3)~~ — **fait**, commit `3be6252a`. -- ~~Traduire/documenter en anglais les 3 commentaires de garde défensive de `ReactorSummaryDisplaySource`~~ — **fait**, commit `cc532f83` (Javadoc anglais complet ajouté sur la classe et ses méthodes en même temps que le refactor `ReactorSummary`). -- ~~Traduire les 9 fichiers de commentaires métier non triviaux listés en §6 (items 5-8, 10-14)~~ — **fait**, commit `9e8abe92`, 2026-07-14 (`CNFluids`, `ClientEvents`, mixins, `PalettesVariantEntry`, `AntiRadiationArmorItem`, `ReactorSizeDisplaySource`, `IrradiatedBiomes`). -- ~~Traduire les 2 derniers fichiers restants (`NuclearExplosionEntity.java`, `CNEntityType.java`)~~ — **fait**, commit `eeffe4fe`, 2026-07-14. **§6 est désormais entièrement clos, 0/292 fichier concerné.** - -**9. À surveiller sans action immédiate** -- `RadiationCapability.tickRadiation` pour les `LivingEntity` non-joueurs : pas de dirty-check d'inventaire (§3, analyse détaillée en §8.2). Statu quo recommandé — le scan mob (6 slots, lookups `HashMap` O(1)) est trop petit pour qu'un hash façon joueur (41 slots) soit rentable ; à reconsidérer seulement si un profiling mesure cette boucle comme point chaud, auquel cas privilégier une invalidation événementielle (`LivingEquipmentChangeEvent`) plutôt qu'un hash. -- `ReactorOutput`/`ReactorFluidInput` : garde `!state.is(newState.getBlock())` absente dans `onRemove` malgré des propriétés mutables (§2.1). Pas un bug confirmé, à surveiller. -- ~~`CreateNuclearJEI` : champ statique mutable `Categories`~~ — **fait**, commit `e7900959` (§2.5/§8.1). - -**Explicitement retiré du plan (ne plus y revenir sans nouvel élément)** — détail et justification en §8.2/§8.3 : -- Découpage supplémentaire de `ReactorControllerBlockEntity` (chantier clos, croissance maîtrisée). -- « Correction » de l'inversion de dépendance `api/` (n'a jamais existé dans le code observé). -- Fusion/suppression du pipeline multiblock (sain, un seul framework vivant). -- Coordinateur dédié au verrouillage fluide (non justifié, `PersistentFluidLocks` suffit). -- Tags `CNItemTags.FUEL`/`COOLER` désynchronisés de `RodType.type()` (terminé). - ---- - -## 8. ✅ Mémoire — corrections, réfutations et décisions déjà actées - -### 8.1 Corrections appliquées, avec commit identifié - -| Correction | Hash(es) | Date | Détail | -|---|---|---|---| -| `DefaultHeatCalculator.computeHeat` : lecture du pattern simplifiée via `ReactorBluePrintItem.getItemStorage(...)` (`ItemStackHandler`) au lieu du parsing NBT manuel `"pattern"`/`"Items"`; plancher `Math.max(0, heat+overHeat)` ajouté ; `ReactorFluidType.maxHeat()` sort du statut de champ mort en alimentant `DefaultOverheatController` via un nouveau paramètre `currentHeat` enfilé dans toute la chaîne de calcul de chaleur; asymétrie fuel/cooler corrigée (§2.2) | `691dfb13` | 2026-07-26 | Comparaison ligne à ligne avec le calculateur communautaire du wiki et un cahier des charges externe. La branche cooler de `DefaultHeatCalculator` scanne désormais ses propres voisins fuel (`isCooled(rod) && isFuel(neighborRod)`), conforme au cahier des charges (« Graphite extra: -1/4Q of the heating rod ») et au calculateur de référence. Vérifié sur le pattern `[G,T,G]/[T,U,T]/[G,T,G]` : `128` des deux côtés (JS et Java). `DefaultHeatCalculatorGameTest` (§3, `498f9dc6`) mis à jour en conséquence : test 3 réécrit (`fuelCoolerMix_coolerScansItsOwnFuelNeighborsSymmetrically`), test 4 ajouté (`threeByThreeDiamond_matchesWikiCalculatorReferenceValue`, ce même pattern 3×3, assertion dérivée de la config donc robuste à un changement de balance, valeur `128` documentée en Javadoc pour la balance par défaut). **Suite `GameTest` exécutée en jeu (`./gradlew runGameTestServer`) pour valider l'ensemble** : 30 tests, 3 échecs — 2 attendus et déjà documentés (`extractfluids_twohandlers_shouldnotoverextract_expectedcontract`, `extractfluids_needofone_shouldsucceed_expectedcontract`, marqueurs `*_expectedContract` du bug de sur-extraction du §1, `200df62f`), 1 casse par le plancher `Math.max(0, ...)` : `singleCoolerRod_noNeighbors_addsOnlyItsOwnBaseRodHeat` attendait `-32` (le `baseRodHeat` négatif d'un cooler isolé) mais obtenait `0` (avalé par le plancher). Corrigé en ajoutant un `overHeat=50` pour garder le total positif et observer réellement la contribution du cooler, plutôt que d'asserter `-32` qui n'est plus jamais atteignable via `computeHeat`. | -| `DefaultHeatCalculator.computeHeat` : boucle O(81) de recherche de position par rod remplacée par un lookup O(1) — `FORMATTED_PATTERN`/`OFFSETS` deviennent `static final` (constantes de classe au lieu de champs par instance), nouvelle `NEIGHBORS_BY_SLOT` (`Map>`) précalculée une seule fois via `buildNeighborsBySlot()`, `computeHeat` itère directement sur `NEIGHBORS_BY_SLOT.getOrDefault(slot, List.of())` au lieu de rescanner les 81 cellules de la grille par rod (§2.2/§7) | `37613d8b` | 2026-07-26 | Aucun changement de comportement (ordre de résolution des voisins et formules fuel/cooler inchangés, confirmé par le message de commit). Dernier point ouvert de la priorité 6 (§7) sur ce composant. | -| Traduction en anglais des 2 derniers fichiers du §6 : `NuclearExplosionEntity.java` (compat Alex's Caves — typage `Object`, instanciation conditionnelle, immunité Raycat/Tremorzilla ; correction au passage d'un commentaire anglais devenu incohérent sur `destroyBlock`) et `CNEntityType.java:76` (renderer no-op de l'entité d'explosion) | `eeffe4fe` | 2026-07-14 | Aucun changement de comportement dans `CNEntityType.java` (commentaire seul) ; dans `NuclearExplosionEntity.java`, seuls les commentaires ont changé, sauf le petit ajustement de formulation autour de `destroyBlock` qui ne touche pas le code exécuté. **Clôt entièrement §6** : grep sur caractères accentués français, tout `src/main/java` (292 fichiers), zéro résultat. | -| Traduction en anglais de 9 fichiers de commentaires métier non triviaux (§6 items 5-8, 10-14) : `CNFluids.java` (uranium/azote liquide/thorium, compensation désync gel/dégel), `ClientEvents.java` (Javadoc tick + tremblement caméra), `RadiationHeartMixin.java`, `CameraAccessor.java`, `GameRendererMixin.java`, `PalettesVariantEntry.java` (+ suppression d'un bloc `if` mort qui n'hébergeait que le commentaire), `AntiRadiationArmorItem.java`, `ReactorSizeDisplaySource.java`, `IrradiatedBiomes.java` (5 commentaires de couleurs) | `9e8abe92` | 2026-07-14 | Aucun changement de comportement (commentaires/Javadoc uniquement, sauf le bloc `if` mort de `PalettesVariantEntry` qui ne changeait rien à l'exécution). Ramène §6 de 11 à 2 fichiers concernés. Reste ouvert : `NuclearExplosionEntity.java` (non touché par ce commit) et `CNEntityType.java` (nouvellement trouvé, non repéré par les tours précédents). | -| `CreateNuclearJEI` : champ statique mutable `Categories` converti en champ d'instance `allCategories`, enfilé explicitement dans `CategoryBuilder` (nouveau paramètre `targetCategories`) ; exposition d'`IJeiRuntime` via `onRuntimeAvailable` ; retrait du `FIXME` de `CNStandardRecipeGen.java:226` (décision actée : catégories de recette = marqueurs, pas des sections) | `e7900959` | 2026-07-13 | Clôt §2 mineurs item 5, §4/§6/§7 (`CNStandardRecipeGen` FIXME) et §7 item 9 (surveillance `CreateNuclearJEI`). Aucun changement de comportement observable pour le FIXME (retrait de commentaire + décision documentée dans le message de commit) ; pour `CreateNuclearJEI`, chaque instance du plugin a désormais sa propre liste, éliminant le risque de contamination inter-instances en cas de reload JEI. | -| Retrait de `addDefaultIrradiatedOres()` (dernier contenu : le carver `NETHER_CAVE`) et de son unique site d'appel dans `IrradiatedBiomes.irradiated()` ; régénération de `irradiated_land.json`/`.cache` (bloc `carvers` désormais vide) | `6bc20956` | 2026-07-13 | **Clôt entièrement** l'item « worldgen irradié » du §4/§7 (`BLUE_ICE`/`VOID_START_PLATFORM` déjà retirés par `ae1e394d` juste avant). Seul point restant sur ce sujet : `CNNoiseGeneratorSettings.java:25` (`STEEL_BLOCK`), sans rapport avec ce commit. | -| Retrait des références commentées à `SPEED` dans `ReactorOutput` (`createBlockStateDefinition`, `getStateForPlacement`) ; retrait de `BLUE_ICE` et de `addDefaultSoftDisks()`/`VOID_START_PLATFORM` (+ son unique site d'appel) dans `IrradiatedBiomes` ; suppression de `OriginalBiomeLookup.java` (classe de résolution de biome jamais appelée, non repérée jusqu'ici par cet audit) ; ajout de `@ParametersAreNonnullByDefault` sur `ReactorOutput` et retrait du `@NotNull` désormais redondant sur `getShape()` | `ae1e394d` | 2026-07-13 | Clôt le premier bullet de §4/§7 item 7 (`SPEED`). Entame le second (« worldgen irradié »), achevé juste après par `6bc20956` (ci-dessus). `OriginalBiomeLookup` est un bonus hors-périmètre de l'audit courant (jamais listé en §4). | -| Ajout de `DefaultHeatCalculatorGameTest` (3 cas : fuel isolé, cooler isolé, asymétrie de voisinage fuel/cooler) — première couverture de test pour `DefaultHeatCalculator.computeHeat` (§3/§7 priorité 1) | `498f9dc6` | 2026-07-13 | Écrit en `GameTest` (real `ServerLevel`/`ReactorControllerBlockEntity`/items enregistrés) après rejet d'une première tentative JUnit+Mockito : mocker `Item`/`ItemStack`/`Level` échoue hors jeu démarré (static init Minecraft), ce qui confirme empiriquement le choix `GameTest` déjà fait pour `ReactorInputFluidManagerGameTest`. Valeurs attendues dérivées de `CNConfigs.server().rods.*` en direct (pas de valeurs codées en dur), donc robuste à un changement de balance. | -| Ajout de `ReactorInputFluidManagerGameTest` (couvre `read`/`write`/`clearInvalid`/`getBlocksPosition`/`getFuildHandlers`/`getInventory`/`extractFluids`, dont des marqueurs de régression `*_expectedContract` pour le bug de sur-extraction du §1) — **jamais documenté dans cet audit jusqu'ici**, omission corrigée à l'occasion de la mise à jour ci-dessus | `200df62f` | 2026-07-12 (avant la réorganisation issue de ce même jour, retrouvé par `git log`) | Deux tests `*_expectedContract` échouent intentionnellement aujourd'hui (documentent le comportement souhaité, pas encore implémenté) ; le reste passe et caractérise le comportement actuel. | -| `ReactorSummaryDisplaySource` — remplacement de la sentinelle de taille (liste 1/6 éléments) et des accès positionnels fragiles (`components.get(2).get(1)`) par un `record ReactorSummary` typé (`ReactorSummaryRow` + `Builder` validant les 6 champs requis) ; `getComponents()` → `getReactorSummary()` retournant `Optional` ; remplacement de `joptsimple.internal.Strings.repeat` (dépendance transitive non déclarée) par `String.repeat` natif ; Javadoc anglais ajouté sur la classe et ses méthodes, retirant au passage les 3 commentaires français "Sécurité Triple-Check" (§6) | `cc532f83` | 2026-07-12 | Nouveau fichier `ReactorSummary.java` (§2.3 et §6, item ex-9, tous deux clos). `toRows()` reste le seul point de conversion vers le format positionnel `List>` exigé par l'API `DisplaySource` de Create. | -| Traduction en anglais des 4 cas de Javadoc public bilingue relevés en §6 (`VicinityEffect.onContaminate`, `CNPonderReactorScenes.Positions`/`STATIC_POS`/`positionsFor`), plus l'intégralité des commentaires inline restants de `CNPonderReactorScenes.java` | `3be6252a` | 2026-07-12 | `VicinityEffect.java` et `CNPonderReactorScenes.java` ne contiennent plus aucun français ; sortis de la liste §6 (14→12 fichiers concernés, ~40→~25 lignes). | -| Retrait de `IrradiatedBiomes.monsters()` (corps vide, arguments ignorés) | `8b0428e3` | 2026-07-12 | Méthode et son unique site d'appel supprimés ; les réglages de spawn passent désormais uniquement par `MobSpawnSettings.Builder`. | -| Blocage explicite (message "WIP") de l'apprivoisement des mobs irradiés (`AnimalUtil.blockTamingWip`) | `261b26d8` | 2026-07-11 | Remplace un apprivoisement cassé/incohérent (chat : collier non fonctionnel ; loup : aucun chemin d'apprivoisement) par un message explicite "pas encore implémenté". Ce même commit a aussi retiré la mécanique de collier (§8.3). | -| Retrait de la mécanique de collier teignable jamais câblée (`IrradiatedCatCollarLayer`, `IrradiatedWoldCollarLayer`, `DATA_COLLAR_COLOR`) | `17b29aa3` | 2026-07-11 | Décision produit exécutée — voir §8.3 pour le contexte de la décision. | -| Guard NBT : `ReactorFrameDisplayManager.write()` n'écrit les sentinelles `MIN_Y`/`MAX_Y` que si `hasFrameColumn()` est vrai | `381c7a5f` | 2026-07-11 | Élimine une pollution NBT mineure ; `read()` protégeait déjà chaque champ par `compound.contains(...)`, donc sans risque de régression. | -| Déduplication `drawGauge` : nouvelle classe `ReactorGaugeRenderer` + template `AbstractReactorStatDisplaySource`, constantes centralisées dans `ReactorDisplayConstants` | `35e474e3` → `d0da13d1` → `a8b6b23f` → `e34adcc5` | 2026-07-11 (20:38 → 21:08, ordre chronologique confirmé) | 5 copies identiques de `drawGauge` (Fuel/Cooler/Heat/LiquidLevel/Summary) ramenées à une seule implémentation ; `ReactorSizeDisplaySource` volontairement exclue (jauge à segments discrets, sémantique différente). | -| `IHeat.HeatLevel.isNotDanger` : tautologie `!= DANGER \|\| != NONE` (toujours vraie) remplacée par `!= DANGER` | `fb0897d3` | 2026-07-05 | ⚠️ **Changement de comportement de balance réel** : avant, les sorties tournaient toujours ; désormais elles s'arrêtent en `DANGER`. À valider en jeu (un joueur peut se retrouver sans écoulement de sortie tant que le réacteur reste en surchauffe). | -| Hystérésis sur le heat appliqué à `rotateOutputs` (champ `lastAppliedOutputHeat`, seuil `RPM_DIVIDER/2`) | `a18038db` | 2026-07-05 | Corrige le flicker RPM en fin de ressources — voir §1 pour le statut résiduel (validation en jeu du seuil encore ouverte). | -| `PlayerInteractReactorFluidInput` : renommage (`PlayerInteracteReactorFluidInput` → sans le 'e' parasite) + retrait de 4 blocs de dead code (variable morte, bloc commenté référençant `ReactorLiquidInput` inexistant, bloc vide `TANK_TO_ITEM`, `instanceof` toujours vrai) | `f2490469` | 2026-07-03 | **Note de fiabilité documentaire** : ce commit avait, par erreur, laissé l'ancienne description du problème dans `AUDIT_ACTUEL.md` (et même l'avait détaillée davantage) au lieu de la marquer résolue — staleness corrigée le 2026-07-12. Exemple concret de pourquoi §3 recommande des tests plutôt qu'une documentation manuelle comme seul filet de sécurité. | -| Tags `CNItemTags.FUEL`/`COOLER` désynchronisés de `RodType.type()` : classification unifiée sur `RodType.resolveRodType(Level)` | `562ce99d` (5 des 6 sites) + `30de52a7` (2 sites manqués : `ReactorBluePrintMenu`, lookup voisin `DefaultHeatCalculator`) | 2026-06-28 | `Level` enfilé jusqu'à `IHeatCalculator.computeHeat`. Vérifié par grep : plus aucun site de classification ne lit `CNItemTags.FUEL`/`COOLER`. `CNItemTags.FUEL` reste sur `THORIUM_ROD` comme tag de craft, explicitement découplé de la classification. | -| Retrait de `SimpleMultiBlockPattern.test()` | `2aaddb4d` | 2026-06-28 | Aucun appelant, retrait sûr. | -| `InventoryHashUtil.stackHash` n'inclut plus `getDamageValue()` | `575a8ab8` | 2026-06-28 | Aucune implémentation `IRadiationSource`/`RadiationRegistry` ne lit la durabilité ; l'inclure ne faisait que déclencher un recalcul serveur (`RadiationCapability.computeItemRadiation`) à chaque variation de durabilité (minage, combat) sur le hot path que le cache devait protéger. | -| Garde `level.isClientSide` centralisée dans `ReactorAssembler.assemble`/`disassemble` + suppression des overrides `playerDestroy` redondants (généralisation du modèle `ReactorRodInput`) sur `ReactorCasing`, `ReactorCooler`, `ReactorFrame`, `ReactorAlarm`, `ReactorOutput`, `ReactorFluidInput` | `34d5706f` | 2026-06-28 | Point de convergence unique de toute la chaîne `onPlace/onRemove/playerDestroy → findController/findControllerPos → ReactorAssembler` ; `onRemove` se déclenche déjà systématiquement lors d'une casse joueur, donc retirer l'appel redondant dans `playerDestroy` élimine le double scan sans changer de comportement observable. | -| Retrait des 6 fichiers de debug/env trackés dans `run/` (`hs_err_pid*.log`, `imgui.ini`, `servers.dat*`, `Jade*.jar.disabled`) + `.gitignore` élargi | `9ddb5a2a` | 2026-06-28 | Les 10 `run/schematics/*.nbt` conservés (assets de gameplay légitimes). | -| Extension de la radiation à toutes les `LivingEntity` (pas seulement le joueur) | `9ded502c` | 2026-06-28 | Point de vérité unique `canBeIrradiated(LivingEntity)` respecté, hook via `LivingTickEvent` (pas de boucle manuelle sur les entités du monde). Compromis assumé : pas de dirty-check pour les non-joueurs — voir §3 (point à surveiller). | -| Centralisation de l'attribution des advancements de pose sur le contrôleur (au lieu de la pièce posée) | `19617118` | 2026-06-26 | `MultiblockHelpers.handleAdvancedPlacedBy` redirige vers le contrôleur ; `CNAdvancementBehaviour` vérifie l'état Minecraft natif (`isAlreadyAwardedTo`) au lieu d'une liste interne. Élimine un risque de double-attribution. | -| Retrait du `LOGGER.warn` redondant dans `ReactorAssembler.assemble` (spam de log) | `b309f231` | 2026-06-26 | Plus aucun `LOGGER.warn`/`info` dans le chemin de succès. | -| `NuclearExplosionEntity` : anti-pattern `try { onBlockExploded } catch(Exception) { destroyBlock(...) }` remplacé par une vérification explicite (`getBlockState(immutablePos).is(state.getBlock())`) | `11b1108a` | 2026-06-22 | Introduit par `5acde3db` (2026-03-04, compat Alex's Caves), corrigé par `11b1108a`. Antérieur à la fenêtre de commits habituellement explorée en détail par ce document, mais retrouvé avec certitude par `git log -S "immutablePos"`. | - -**Commit à mention neutre (ni bug ni fix, clarification)** : `20c1df0b` (*"IO blocks are now natively Casings in NBT"*) — message trompeur, ne change **rien** à l'architecture : nettoyage cosmétique de 22 lignes d'une scène Ponder. Les blocs I/O (`ReactorOutput`, `ReactorRodInput`, `ReactorFluidInput`, `ReactorAlarm`) restent des classes `Block` séparées de `ReactorCasing`. - -### 8.2 Réfutations / non-problèmes confirmés (architecture) - -Ces affirmations historiques ont été vérifiées comme **fausses ou déjà closes** dans le code actuel — elles ne correspondent à aucun commit de correction isolé (soit rien n'a jamais été cassé, soit la résolution est le résultat cumulatif de nombreux commits non attribuables individuellement) : - -- **Inversion de dépendance `api/`** — ❌ toujours réfuté : `MultiBlockManagerBeta`, `api/multiblock/rods/RodType`, `api/multiblock/fluid/ReactorFluidType` n'importent aucun `content.*` (revérifié par grep sur tout `api/`, 2026-07-12 : zéro résultat). *Pas de hash applicable — l'inversion alléguée par `AUDIT_V1.md` n'existe pas dans l'historique observé.* -- **Deux/trois frameworks multiblock concurrents** — ❌ toujours réfuté : `lib/multiblock/manager/*` et `IBetterPattern` n'existent pas (8 fichiers restants dans `lib/multiblock/`, tous utilisés). *Pas de hash applicable.* -- **God class `ReactorControllerBlockEntity`** — ✅ chantier clos, croissance maîtrisée : **533 lignes** (886 dans `AUDIT_V1.md`, 492 puis 529 aux tours intermédiaires), délégation à 34 fichiers de support (`service/` 14, `manager/` 12, `consumable/` 6, `display/` 2). *Pas de hash unique — résultat cumulatif de dizaines de commits d'extraction progressive vers `manager/service/consumable`, non attribuable avec certitude à un commit isolé.* -- **Coordinateur de verrou fluide dédié** — ✅ toujours non justifié : `PersistentFluidLocks` reste le seul système ; pas de `FluidLockManager` concurrent retrouvé (celui décrit en `AUDIT_V1.md` B14 a disparu, hash non déterminé — voir §8.4). `clearLockIfAllInputsEmpty` utilise `getFuildHandlers(level)` (pas de scan 3D), double itération mineure sans gravité. -- **`clearLockIfAllInputsEmpty` : pas de scan cubique O(n³)** — ✅ acceptable, confirmé sain. -- **`ReactorSummaryDisplaySource.formatValue` — "incohérence" de mode d'affichage du heat vs `HeatDisplaySource`** — ❌ réfuté, ce n'est pas un bug : c'est un choix de design volontaire du widget de synthèse, mal formulé par l'audit initial. Analyse détaillée : `formatValue` force une jauge en mode "normal" pour `heat` (`gaugeOnNormal=true`), mais `formatFluid` (`ReactorSummaryDisplaySource.java:203-207`) fait exactement la même chose pour `fluid` (`mode == 0 || mode == 3` → jauge) — ce n'est donc pas une exception isolée sur `heat`, mais un pattern cohérent et répété : les deux stats les plus critiques à lire d'un coup d'œil dans une vue de synthèse (`fluid`, `heat`) sont en jauge par défaut, `fuel`/`cooler` restent en texte. `HeatDisplaySource`, à l'inverse, est un affichage individuel une-ligne où la jauge occuperait toute la largeur disponible pour une seule information — un défaut texte y est tout aussi légitime. Les deux widgets ont des contraintes d'espace et des objectifs différents ; il n'y a jamais eu de règle implicite selon laquelle un mode par défaut devait être identique entre les deux. **Pas de hash applicable** — aucun changement de code, décision de clôture actée après clarification du comportement voulu. Écarté aussi : la création d'une classe utilitaire `ReactorDisplayFormatting` pour mutualiser les 3 mappings mode→rendu existants (`AbstractReactorStatDisplaySource.provideLine`, `ReactorSummaryDisplaySource.formatValue`, `ReactorSummaryDisplaySource.formatFluid`) — ces 3 mappings ont des sémantiques différentes (3 modes vs 4 modes, flag `gaugeOnNormal` par stat, suffixe d'unité optionnel), donc les unifier demanderait un enum de mode partagé mal aligné entre appelants (le type même de fragilité par index déjà corrigée en `cc532f83`) ou une fonction à autant de paramètres que de sources de divergence — coût supérieur au gain pour un point cosmétique sans risque fonctionnel. -- **`RadiationCapability.tickRadiation` pour `LivingEntity` non-joueurs — absence de dirty-check d'inventaire** — ❌ réfuté comme piste d'amélioration, le statu quo (§3, §7 item 9) est maintenu après analyse approfondie du 2026-07-14. Détail : - - **Asymétrie constatée** : côté joueur, `InventoryHashUtil.compute(player)` hashe 41 slots (`items` 36 + `offhand` 1 + `getArmorSlots()` 4) et `computeItemRadiation(Player)` n'est recalculé que si ce hash change ([RadiationCapability.java:112-121](src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java#L112-L121)). Côté mob, `computeItemRadiation(LivingEntity)` recalcule inconditionnellement à chaque tick, mais sur seulement 6 slots (`getArmorSlots()` 4 + main + offhand). - - **Pourquoi un hash ne serait pas rentable pour les mobs** : chaque stack est résolu par `RadiationRegistry.get(ItemStack)`, un simple `HashMap.get` en O(1) (ou une petite itération de tags en cas d'absence) — voir [RadiationRegistry.java:25-38](src/main/java/net/nuclearteam/createnuclear/api/radiation/RadiationRegistry.java#L25-L38). Hasher ces mêmes 6 slots pour détecter un changement coûterait sensiblement la même chose que le calcul direct qu'il est censé éviter (même nombre d'accès aux stacks). Le hash côté joueur est rentable uniquement parce qu'il amortit un scan bien plus large (41 slots, potentiellement des `IRadiationSource` tiers coûteux) sur des ticks où rien n'a changé — ce rapport gain/effort ne tient pas à l'échelle 6 slots. - - **Le reste de `tickRadiation` domine probablement le coût par mob** : résolution de biome (`level.getBiome`), lecture d'attribut (`getRadiationResistance`), et gestion de `MobEffectInstance` (`getEffect`/`removeEffect`/`addEffect`) s'exécutent de toute façon à chaque tick pour chaque `LivingEntity`, dirty-check ou non ([RadiationCapability.java:123-141](src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java#L123-L141)). Un dirty-check sur l'inventaire ne changerait donc pas la classe de complexité globale (toujours O(N) sur le nombre de mobs), seulement une petite constante déjà faible. - - **Seule piste qui changerait réellement l'ordre de grandeur, si un jour nécessaire** : invalidation événementielle via `LivingEquipmentChangeEvent` (Forge) plutôt qu'un hash — un flag booléen positionné uniquement quand un slot d'équipement change réellement, lu en O(1) au lieu d'un scan/hash systématique de 6 slots. Non implémenté car non justifié tant qu'aucun profiling ne montre cette boucle comme point chaud (critère déjà posé par le commit d'origine `9ded502c`). - - **Point annexe repéré au passage, clarifié comme intentionnel** : `computeItemRadiation(Player)` n'inclut pas l'armure du joueur ([RadiationCapability.java:145-158](src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java#L145-L158)) alors que `InventoryHashUtil.compute(player)` la hashe bien (le hash reste correct pour déclencher un recalcul si l'inventaire principal/offhand change, l'armure n'y contribuant simplement jamais de radiation). **Confirmé volontaire, pas un oubli** : dans ce mod, les items d'armure existants sont des équipements de *résistance* à la radiation (ex. armure anti-radiation), jamais des *sources* de radiation — le rôle d'une armure ici est structurellement de protéger, pas d'irradier. Aucun item d'armure n'implémente `IRadiationSource` ni n'est enregistré dans `RadiationRegistry`, donc l'omission est cohérente avec le design actuel plutôt qu'une lacune. À revisiter uniquement si une future armure est conçue comme source de radiation (auquel cas il faudrait l'ajouter explicitement à `computeItemRadiation(Player)`, symétriquement à ce qui existe déjà pour `computeItemRadiation(LivingEntity)`). - - **Pas de hash applicable** — aucun changement de code, décision de statu quo actée après analyse. -- **`CNNoiseData.bootstrapRegistries` — `B7` d'`AUDIT_V1.md`, prétendument entièrement commenté (noise `EROSION` jamais enregistré)** — ❌ réfuté par lecture directe (2026-07-18) : la méthode enregistre bien `EROSION` (`context.register(key, new NoiseParameters(...))`, non commenté). *Pas de hash applicable — la correction (ou le fait que le bug n'a jamais existé sous cette forme dans le code observé) est antérieure à la fenêtre de commits explorée en détail, cf. §8.4.* -- **`RodsTooltipHandler` — `B17` d'`AUDIT_V1.md`, prétendument condition de namespace inversée par erreur** — ❌ réfuté comme bug, clarifié comme intentionnel (2026-07-18) : le fichier retourne bien tôt pour les items du mod (`if (id != null && CreateNuclear.MOD_ID.equals(id.getNamespace())) return;`), mais un commentaire explicite documente désormais que c'est voulu — les items du mod ont déjà leur tooltip via `setTooltipModifierFactory` de Registrate, ce handler ne sert que les items externes/datapack que cette factory ne peut pas couvrir ; inverser la condition doublerait le tooltip sur les rods du mod. *Pas de hash applicable — soit le commentaire de clarification est antérieur à la fenêtre explorée en détail (§8.4), soit le bug initial d'`AUDIT_V1.md` décrivait un état de code jamais confirmé dans l'historique récent.* - -### 8.3 Décisions produit exécutées - -- **Collier teignable chat/loup** — décision prise : retrait complet de la mécanique plutôt que finir le câblage. `IrradiatedCatCollarLayer.java`/`IrradiatedWoldCollarLayer.java` supprimés (aucun appelant, confirmé par grep) ; `DATA_COLLAR_COLOR`, `getCollarColor()`/`setCollarColor()`, et le NBT associé retirés d'`IrradiatedCat.java` ; interaction `DyeItem` retirée de `mobInteract` (complète une suppression partielle laissée par une édition en cours qui rendait le code non compilable en état intermédiaire). `IrradiatedWolf` n'avait de toute façon jamais câblé cette mécanique. Note : `getBreedOffspring` (`IrradiatedCat.java:248-260`) appelle toujours `setCollarColor`/`getCollarColor`, mais sur des `Cat` **vanilla** (API Minecraft native), sans rapport avec la mécanique retirée — laissé tel quel à raison. Hash : `17b29aa3` (2026-07-11). -- **Apprivoisement des mobs irradiés bloqué avec message "WIP"** plutôt que laissé cassé/incohérent — décision produit exécutée en même temps que le retrait du collier. Hash : `261b26d8` (2026-07-11). - -### 8.4 Corrections historiques d'`AUDIT_V1.md` — hash non déterminé avec certitude pour la majorité - -L'audit courant indique depuis plusieurs tours que les bugs suivants d'`AUDIT_V1.md` sont **vérifiés résolus dans le code actuel** : **B2, B3, B4, B5, B6, B8, B9, B11, B13, B16, B19, B12, B14**, l'off-by-one `getFluidInTank`, l'icône d'item de l'armure anti-radiation teintée, et l'ensemble des problèmes radiation historiques (point de vérité unique `canBeIrradiated`). Cette réorganisation a tenté de retrouver un hash de commit pour chacun via `git log -S` sur des chaînes distinctives ; résultat : - -- **B15 (anti-pattern try/catch `NuclearExplosionEntity`)** — ✅ hash déterminé avec certitude : `11b1108a` (voir §8.1). -- **B9 (palier radiation `amplifierLevel0` dupliqué)** — candidat trouvé mais **non confirmé avec certitude** : `3b84bac4` ("refactor: update IrradiatedSurfaceRules and RadiationCapability for improved biome handling and radiation amplification logic") est thématiquement plausible mais le diff n'a pas été vérifié en détail. À valider manuellement avant de le citer comme preuve. -- **B13 (bras invisibles de l'armure anti-radiation)** — candidat trouvé mais **non confirmé avec certitude** : `d9ba3956` (2026-06-26, "fix: adjust arm dimensions and positions in AntiRadiationArmor model for better alignment") correspond thématiquement mais ne mentionne pas explicitement le bug des bras invisibles dans son message. À valider manuellement. -- **B1, B2, B4, B5, B18** — **non déterminé**. Recherches `git log -S` ciblées effectuées sur les chaînes distinctives de chaque bug (`&& false`, `RadiationSyncPacket`, valeur de drop `THORIUM_BLOCK`, `BiomeTagRule`/`return null`, clé config `screenShaking`) sans résultat concluant. Ces corrections sont probablement antérieures à la fenêtre de commits explorée en détail par ce document (avant le 2026-06-24) ; les retrouver demanderait une revue manuelle complète de l'historique pré-fenêtre, disproportionnée par rapport au gain (le code actuel confirme déjà que le bug n'est plus présent, seule la traçabilité du commit manque). -- **Reste de la liste** (B3, B6, B8, B11, B12, B16, B19, off-by-one `getFluidInTank`, icône armure, historique radiation complet) — recherche non retentée par souci de proportionnalité : chaque item nécessiterait sa propre requête `git log -S` sur une chaîne distinctive extraite manuellement du code originel décrit par `AUDIT_V1.md`, pour un ensemble de plus de 10 items mineurs déjà revérifiés comme absents du code actuel à plusieurs tours d'audit successifs. **Si la traçabilité individuelle de ces corrections devient nécessaire (audit externe, obligation de conformité), prévoir une session dédiée à l'archéologie Git plutôt que de l'inclure au fil de l'eau d'un audit de code.** - -**Dead code massif d'`AUDIT_V1.md`** (§3 de ce document historique : `lib.multiblock.manager.*`, framework d'animation keyframe, `CreateNuclearDamageSources`, `CommentEventClients`, fichier `possible code`, `CNShapelessRecipeGen`, `RadiationOverlay`/`EasingHudOverlay`, `IrradiatedSurfaceRules` v1, `VerifyPattern7x7`/`9x9`, `saveData2`, et la longue liste de membres/méthodes/imports morts §3) — non revérifié individuellement dans cette réorganisation (hors périmètre de la demande, qui portait sur la réorganisation d'`AUDIT_ACTUEL.md` et non sur un nouveau balayage complet du dead code d'`AUDIT_V1.md`). Signal indirect : `lib/multiblock/` ne contient plus que 8 fichiers, tous utilisés (revérifié §8.2), ce qui suggère que le plus gros bloc (`lib.multiblock.manager.*` + `IBetterPattern`) a bien été supprimé à un moment de l'historique — mais aucun hash précis n'a été recherché pour cette réorganisation. diff --git a/AUDIT_V1.md b/AUDIT_V1.md deleted file mode 100644 index c5613f34c..000000000 --- a/AUDIT_V1.md +++ /dev/null @@ -1,187 +0,0 @@ -# 🔬 Audit Create Nuclear — Rapport détaillé - -> Audit du code Java (`src/main/java`, 282 fichiers / ~21 000 lignes) réalisé par revue multi-agents : 11 agents (un par package) ont lu l'intégralité du code ; chaque finding *bug* / *dead code* a été repris par un agent sceptique chargé de le **réfuter** (grep global incluant `src/generated`, mixins, reflection) afin d'éliminer les faux positifs ; un agent final a synthétisé l'architecture. -> -> **Hors périmètre** : `src/generated/resources` (datagen), `src/main/resources` (textures/lang/sons/nbt). -> -> **Résultat brut** : 144 findings → **80 confirmés**, 11 réfutés (écartés), 6 incertains, 47 cleanup/design/perf non soumis à vérification adversariale. - -| Catégorie | Total | Confirmés (≈) | -|---|---|---| -| 🐛 Bugs | 41 | 28 | -| 🧹 Dead code | 33 | 30 | -| ♻️ Cleanup | 33 | — | -| 🏗️ Design | 16 | 10 | -| ⚡ Perf | 7 | 4 | -| ✅ Points forts | 14 | — | - -**Constat transversal** : le code est visiblement en **plein refactor V2**. La majorité des problèmes ne sont pas de la mauvaise écriture mais des **reliques d'une migration inachevée** — deux frameworks multiblock en parallèle, du code commenté un peu partout, des `&& false` de debug oubliés, des features câblées à moitié. C'est l'angle principal du nettoyage. - ---- - -## 1. Vision architecturale - -L'organisation **package-by-feature** est saine et idiomatique (spécifique à create) pour un addon Create : couche d'enregistrement racine (`CN*`), `content/` par domaine, `foundation/` + `infrastructure/` transverses, `api/` + `impl/`, `compat/` isolé. Cinq problèmes structurels ressortent : - -1. **🔴 Inversion de dépendance dans `api/`** — `api.multiblock.MultiBlockManagerBeta` importe `content.multiblock.controller.ReactorControllerBlockEntity` ; `api.multiblock.rods.RodType` importe `content...CNRodTypes` ; idem `ReactorFluidType`. Le package censé être la fondation stable dépend du contenu concret → cycle d'intention, `api/` ne peut pas servir de point d'extension propre. - -2. **🔴 God class** — `ReactorControllerBlockEntity` fait **886 lignes**, touche items / fluides / chaleur / explosion / advancement / biome / NBT / tooltips. Les sous-packages `manager/`, `service/`, `consumable/` ont été créés *pour le découper*, mais l'extraction est à moitié faite : la BlockEntity orchestre encore tout → l'abstraction ajoute de l'indirection **sans** retirer de responsabilité. - -3. **🔴 Deux frameworks multiblock concurrents** — le vivant `api.multiblock.MultiBlockManagerBeta` (utilisé par `CNMultiblock`), et tout `lib.multiblock.manager.*` + `impl.IBetterPattern` qui sont **morts** (ne se référencent qu'entre eux). Piège à temps pour tout nouveau contributeur. - -4. **🟠 Feature radiation éparpillée sur 4 couches** — `api.radiation` + `foundation/item/radiation` + `content/effects/capability` + `foundation/networking/radiation` implémentent **une seule** feature, sans package propriétaire. Le contrat `IRadiationSource` vs `RadiationRegistry` est dupliqué sans règle de priorité. - -5. **🟠 Couplage hub + accès infra direct** — la BlockEntity contrôleur est un hub de couplage (atteint explosion, advancement, biome, config, logistics, inputs, registres) ; et les classes `content/` importent directement `infrastructure.config.CNConfigs` / `CNBiomes`. Un seam `ConfigValueResolver` existe déjà dans `foundation/utility` mais n'est pas utilisé. - -**Autres points structurels** : package racine fourre-tout (~25 classes `CN*` à plat, mélangées avec `@Mod`, le proxy client et `ClientEvents`) ; `foundation/util` vs `foundation/utility` redondants ; framework de modèle décompilé logé dans `content/explosion` (mêle rendu client réutilisable et logique serveur) ; **aucun test** (`src/test` vide) ; dossier **`run/` versionné** (mixin.out, saves, configs — à mettre en `.gitignore`). - ---- - -## 2. 🐛 Bugs confirmés — par priorité - -### 🔴 Critiques (cassent une fonctionnalité, fix simple) - -| # | Fichier:ligne | Problème | -|---|---|---| -| B1 | `foundation/events/overlay/EventTextOverlay.java:40` | `isActive()` fait **`return timer > 0 && false;`** → l'overlay ne s'affiche **jamais**. Kill-switch de debug oublié. Retirer `&& false`. Un `LOGGER.warn` de debug traîne aussi (à retirer). | -| B2 | `foundation/networking/radiation/RadiationSyncPacket.java:26` | Le handler fait `new ClientRadiationData(radiation)` puis **jette l'instance** (record sans stockage statique ni effet de bord). Le serveur envoie la radiation, **rien ne la mémorise côté client** → packet no-op, sync radiation cassée. Fix : stocker dans un holder statique client lu par l'overlay. | -| B3 | `content/effects/VicinityEffect.java:40` | `int cooldownTicks = 0;` déclaré **à l'intérieur** de la boucle `for` → `if (cooldownTicks==0)` toujours vrai, tout le throttling à 500 ticks est mort (map `cooldowns` + get/setCooldown jamais utilisés). `RadiationEffect` override `isDurationEffectTick → true` donc l'effet est ré-appliqué **à chaque tick** sur toutes les entités proches. | -| B4 | `CNBlocks.java:593-610` | **`THORIUM_BLOCK`** (bloc de stockage) drope **`RAW_URANIUM`** au lieu de lui-même, et est taggé comme un **minerai** (`ores`, `ores/thorium`, `NEEDS_DIAMOND_TOOL`…). Copier-coller d'un minerai d'uranium. Confirmé dans le datagen (`thorium_block.json:41`). Fix : calquer sur `LEAD_BLOCK`/`STEEL_BLOCK` (loot par défaut, seul tag `storage_blocks/thorium`). | -| B5 | `infrastructure/worldgen/biome/surfacerule/BiomeTagRule.java:21` | `apply()` retourne **`null`** au lieu d'une `Condition` ; la classe interne `Predicate` qui contient la vraie logique n'est jamais instanciée → **NPE** à l'évaluation de toute surface rule basée dessus. Fix : `return new Predicate(context)`. | -| B6 | `content/multiblock/bluePrintItem/ReactorBluePrintItemScreen.java:70` | `new ReactorBluePrintItemPacket(..., countGraphiteRod, countGraphiteRod)` : le 6ᵉ argument répète le 5ᵉ → la valeur **uranium est perdue**, le calcul de progression est faussé. (Ligne 53 : `coef=0.1F` envoyé en place de `heat` → chaleur jamais transmise ; le packet tourne aussi à chaque tick sans condition de changement.) | - -### 🟠 Importants - -| # | Fichier:ligne | Problème | -|---|---|---| -| B7 | `infrastructure/worldgen/biome/CNNoiseData.java:18` | `bootstrapRegistries()` **entièrement commenté** → noise `EROSION` jamais enregistré, mais les surface rules font `noiseCondition(EROSION)` 3× (`IrradiatedSurfaceRules2:54/58/62`) → `getOrThrow` lèvera. **Dormant** tant qu'aucune dimension ne câble `irradiated_noise`, mais défaut d'intégrité de données réel. | -| B8 | `content/multiblock/controller/ReactorControllerBlockEntity.java:1020` | `clearLockIfAllInputsEmpty` enchaîne `findStructure(...).data().getSize()` sans null-check ; `findStructure` retourne `null` quand la structure n'est plus formée → **NPE serveur**. Les 2 autres appelants (`ReactorAssembler:37,62`) gardent bien le null — prouve l'oubli. Fix : stocker le résultat, null-check, fallback `reactorSize`. | -| B9 | `content/effects/capability/RadiationCapability.java:165` | `if (rad` **statique** : (1) pas de dimension dans la clé → collision inter-dimension, (2) **jamais purgée** (unload chunk/monde) → fuite mémoire, (3) doublonne `PersistentFluidLocks` (deux sources de vérité, aiguillage `level instanceof ServerLevel`). La suppression d'un contrôleur ne nettoie que `PersistentFluidLocks`. | -| B15 | `content/explosion/NuclearExplosionEntity.java:224` | `try { onBlockExploded } catch(Exception){ destroyBlock(...,true) }` : utilise une exception comme branchement (anti-pattern), **avale les vrais bugs**, et les deux branches ont des sémantiques de drop **différentes** (catch = drop forcé). Au minimum logger. | -| B16 | `foundation/data/recipe/CNStandardRecipeGen.java:391` | `ModdedCookingRecipeResult.serializeRecipeData` fait `conditions.forEach` alors que le record est construit avec `conditions=null` (l.351) → **NPE datagen** dès qu'une recette `isOtherMod` serait sérialisée. Latent (chemin non câblé) mais cassé. Fix : liste vide au lieu de null, ou garde. | -| B17 | `foundation/events/RodsTooltipHandler.java:26` | Condition de namespace **inversée** : n'applique `RodsStats` qu'aux items **non**-createnuclear (donc no-op, car les rods sont du mod) ; et `RodsStats` est déjà branché via Registrate → si corrigé, **double tooltip**. Code mort fonctionnel à risque de régression — probablement à supprimer entièrement. | -| B18 | `infrastructure/config/CNCClient.java:9` | `screenShaking` réutilise la **même clé TOML** `nuclearBombFlash` que la ligne 8 → les deux options pointent sur la même valeur config (lu dans `ClientEvents:60`). Fix : clé `screenShaking`. | -| B19 | `infrastructure/worldgen/biome/surfacerule/IrradiatedSurfaceRules2.java:23` | `IS_HIGHLANDS = biome()` (varargs vide → `Set.copyOf([])::contains` toujours faux) ne matche jamais → branches `MOON_DIRT` (l.35) / `LEAD_TURF` (l.39) **mortes**. | - -### 🟡 Mineurs / robustesse - -- `content/multiblock/output/ReactorOutputEntity.java:117` — `tick()` : pas de null-check `level`, 2-3 lookups world redondants/tick (client+serveur) pour une position fixe `above(3)`. -- `content/multiblock/input/fluid/ReactorInputFluidManager.java:129/148` — off-by-one `getFluidInTank(getTanks())` : toléré par le `SmartFluidTank` single-tank actuel (qui ignore l'index) mais **viole le contrat `IFluidHandler`** ; et `extractFluids` ne **décrémente jamais `fluidNeeded`** + ignore l'extraction quand `toExtract>1`. -- `content/multiblock/core/ReactorCoreEntity.java` — `tick()` vide. -- `content/multiblock/input/item/ReactorInput.java:65` — retourne `PASS` après ouverture de menu côté serveur → désync client(`SUCCESS`)/serveur. Fix : `CONSUME`/`SUCCESS`. -- `foundation/utility/RenderHelper.java:36` — champs `lastAlpha/lastCoverage/lastFirstPerson` écrits jamais lus (cache inexistant) ; branche `coverage!=1f` inerte (scale commenté + translate qui s'annulent). Connexe : `RadiationOverlay:49` binarise l'alpha via `Math.round`. -- `foundation/utility/InventoryHashUtil.java:91` — le hash inclut `getDamageValue()` → tout changement de durabilité déclenche un resync (rafales de `RadiationSyncPacket` au minage/combat). -- `content/multiblock/output/ReactorOutput.java:63` — `requireNonNull` + `assert entity!=null` (assert désactivé en prod) au lieu d'une garde gracieuse ; `DIR` 0..2 avec valeur 2 jamais utilisée. -- `content/redstone/displayLink/source/ReactorSizeDisplaySource.java:31` — `%` trompeur `tier*100/3` (33/66/100 % pour tier 1..3). - ---- - -## 3. 🧹 Dead code à supprimer - -### Gros blocs (forte valeur, risque faible) - -- **Tout `lib.multiblock.manager.*`** (`MultiBlockManager`, `MultiBlockCache`, `RegisteredMultiBlockPattern`) + **`lib.multiblock.impl.IBetterPattern`** + `SimpleMultiBlockPatternBuilder` (variante non-aisle) → reliques V2 mortes (ne se référencent qu'entre elles). *(`MultiBlockCache.isCached` a même une sémantique inversée.)* -- **Framework d'animation keyframe** : `CNModelAnimator` + `CNAnimation` + `CNIAnimatedEntity` + surcharges `CNAdvancedEntityModel.rotate/rotateMinus` → jamais utilisé (le modèle réel anime directement via `animateParticle`). ⚠️ **Garder** `CNAdvancedEntityModel`/`CNBasicEntityModel`/`CNAdvancedModelBox` : `NuclearMushroomCloudModel` en hérite réellement. -- **`CreateNuclearDamageSources`** = doublon (quasi octet-près) de `CNDamageSources` → garder `CNDamageSources`, migrer les 2 références (`RadiationEffect:94`, `CNFanProcessingTypes:122`) ; les surcharges privées `source(Entity…)` sont aussi mortes dans les deux classes. -- **`foundation/events/CommentEventClients.java`** — coquille `@EventBusSubscriber` vide (aucun `@SubscribeEvent`) → supprimer. -- **`foundation/events/possible code`** — fichier sans extension `.java`, brouillon `com.tonpackage` (3 fragments : services META-INF, `HudOverlayRegistry`, 2ᵉ `CNClientEvent`) → sortir du dépôt. -- **`foundation/data/recipe/CNShapelessRecipeGen.java`** — provider qui n'émet aucune recette, enregistrement commenté (`CreateNuclearDatagen:42`). -- **`IrradiatedSurfaceRules` v1** — remplacé par v2 (`CNNoiseGeneratorSettings:29`), ne survit que via un import. -- **`RadiationOverlay` + `EasingHudOverlay`** — `RadiationOverlay` commenté dans `HudRenderer.overlays` → jamais instancié/rendu (et `IrradiatedOverlayRendererVision` fait déjà ce rendu). -- **`VerifyPattern7x7` / `VerifyPattern9x9`** (`ReactorPattern`) + `getBlockPosForReactor` (@Deprecated) — jamais appelés. -- **`saveData2`** (`ReactorBluePrintMenu:160`) — doublon mort de `saveData` (et logique de comptage subtilement fausse : pas de reset). - -### Membres / méthodes morts - -`ReactorOutputValue` + `outputPos` + `getStressConfigKey` trivial + addBehaviours commenté (`ReactorOutputEntity`) ; `inputPos`/`inputLevelKey` + override `getLevel` trivial (`ReactorInputEntity`) ; `ReactorCasingEntity.getController` + champ `controller` (offset magique `+4/+4`) ; `VicinityEffect.cooldowns`/`getCooldown`/`setCooldown` + param `timer` ; `getArmorResistance` (`RadiationCapability`) ; helpers `TextUtils` (`renderMultilineDebugText`, `renderDebugText`, `translateWithFormatting`, `formatInt`×2, `leftPad`) ; `Mods` (`getBlock`/`getItem`/`contains`/`rl`/`id`/`runIfInstalled`/`executeIfInstalled`) ; `SoundEntryBuilder` (`playItemPickup`, `playExisting`×4, `addVariant`×2, `noSubtitle`, setter `attenuationDistance`) ; `BigFluidStack` (`send`/`receive`/`read`/`isInfinite`/`duplicateWrappers`/`comparator`/`write`) ; `CNParticleRegistry.createBlockParticleType`/`createItemParticleType` ; `parseLegacy`/`ofLegacyName`/`LEGACY_NAME_MAP` (`CNFanProcessingTypes`) ; `registerAndWrap` + vars locales inutilisées (`CNDensityFunctions`) ; `CExplode` (config `size`/`type`/`time` jamais lue) ; `IrradiatedBiomes.monsters()` (corps commenté, no-op) ; `VANILLA_RANGE`/`cubeBottomTop` (`PaletteBlockPattern`) ; `getVariant()` (`CNPaletteStoneTypes`) ; `START=null` (`CNAdvancement`) ; surcharge `RadiationRegistry.getRadiation(biome,player)` ; `VirtualReactorInputFluid.removeFluid`/`getAmount` ; `matchesWithResult`/`construct`/`MultiblockMatchResult`/`getDistanceControllerTest` (lib) ; `ensureProperlyBuilt` (`SimpleMultiBlockPatternBuilder`). - -### Imports morts / doublons - -`CNBlocks.java` (`ResourceLocation`, `BlockTags`, `Enriching*Block` importés 2×) ; `AntiRadiationArmorItem.java` (`Util`/`Component`/`Attribute`/`world.item.*` en double, `TagKey`) ; `ReactorFluidTypesValue.java` (`reflect.Array`/`Field`, `Map`, `ForgeRegistries`) ; `CreateNuclearDatagen.java:18` (`CNShapelessRecipeGen`) ; `CNMixingRecipeGen.java:7` (`Fluids`) ; import dupliqué `IMultiBlockPatternBuilder` (`SimpleMultiBlockPatternBuilder:6-7`). - ---- - -## 4. ⚡ Performance - -| Fichier:ligne | Problème | Fix | -|---|---|---| -| `content/multiblock/pattern/ReactorPattern.java:96` | `findController` / `findControllerPos` scannent **~3971 blocs** (`getBlockState` + `getBlockEntity`) à **chaque pose/casse** de casing/frame/cooler/output — et **aussi côté client** (pas de garde `isClientSide`). Boucles avec `!=` comme condition d'arrêt et `new BlockPos` par itération. | Réduire la zone, `MutableBlockPos`, court-circuit dès trouvé, garde `isClientSide`, `<` au lieu de `!=`. | -| `content/effects/RadiationEffect.java:40` | Le predicate reconstruit un `HashSet` + reparse toutes les `ResourceLocation` de la blacklist **à chaque entité candidate** de la bounding box, **à chaque tick** (override `isDurationEffectTick → true`). | Cacher le `Set` (invalidé au reload config). | -| `content/multiblock/alarm/ReactorAlarmEntity.java:95` | `tickServer()` appelé inconditionnellement (y compris **client**, pas de garde `!isClientSide`), `awardPlayer` à chaque tick quand `POWERED`. | Garde `!isClientSide`, n'award qu'au front montant. | -| `api/multiblock/fluid/ReactorFluidType.java:55` | `getTypeForFluid` : double boucle sur le registry `FLUID_TYPE` + `ForgeRegistries.FLUIDS.getKey(fluid)` recalculé à chaque itération interne. | Calculer la clé une fois avant le filtre. | -| `foundation/events/overlay/HelmetOverlay.java:73` | `gui.renderHotbar(12f, graphics)` re-rendu depuis un overlay HELMET chaque frame (registerAbove → double rendu possible) + lookups inventaire répétés (`getArmor(HEAD)` 2×/frame). | Vérifier la nécessité, mémoriser le casque par frame. | - -*Mineurs* : `NuclearMushroomCloudParticle:136` (`new PoseStack()` + `endBatch()` par frame), `ReactorSummaryDisplaySource:180` (`labelWidth()` recalcule des traductions par affichage). - ---- - -## 5. ♻️ Cleanup notable (qualité) - -- **Duplication `drawGauge`** copiée à l'identique dans 5 `DisplaySource` (Cooler/Fuel/Heat/LiquidLevel/Summary) + magic numbers `maxFuel=64`, `maxCooler=64`, `maxFluid=16000`, `maxHeat=1000` → extraire `AbstractReactorStatDisplaySource`. -- **`GeneratedRecipeBuilder` dupliqué** entre `CNStandardRecipeGen` et `CNShapelessRecipeGen` (+ typo param `enterFolder(String foldedr)`, `createLocation()` jamais appelé). -- **`moddedCompacting`/`moddedPaths` dupliqués** entre `EnrichedRecipeGen` et `SnowPowderRecipeGen` (et `moddedPaths` retourne toujours `null` avec une signature `GeneratedRecipe` trompeuse). -- **Framework de modèle décompilé** (`CNBasicModelPart`, `CNTabulaModelRenderUtils`, `CNAdvancedModelBox`) : noms de variables FernFlower (`lvt_10_1_`, `p_228305_1_`, `var9`), `ModelBox`/`TexturedQuad`/`PositionTextureVertex` dupliqués, shadowing de champs `cubeList`/`childModels`. -- **Logs de debug en prod** : `LOGGER.info("EXPLOSIOOOOOON…")` à chaque explosion (`NuclearMushroomCloudParticle:76`), `LOGGER.warn` par entité touchée (`NuclearExplosionEntity`). -- **Typos dans des noms publics** : `RadiationEffetcHandler` (→ Effect), `SolidRenderedPlaceableFluidtype` + param `stillTecture`, `caracter` (record `MultiBlockOffsetPos`), `contruct` (`IMultiBlockPattern`), `foldedr`. -- **`fireDamage`** non utilisé dans le constructeur `EnrichingCampfireBlock` (valeur 5 passée pour rien) ; dead store `i = ...get2DDataValue()` jamais relu (`EnrichingCampfireBlockEntity:27`) ; branches `isShiftKeyDown` identiques (`ReactorBluePrintItem:51`) ; `use()` redondant retournant `PASS` (`EnrichingCampfireBlock:61`). -- **Commentaires FR/EN mêlés** un peu partout, code commenté résiduel, double `;;` (`CNMixingRecipeGen`, `CNStandardRecipeGen:78`, `CNCClient`), en-têtes FernFlower (`Maths`, `SimplexNoise`). -- **`unlockedBy("has_storage_blocks_steel_nugget", ingots/thorium)`** — critère copié-collé incohérent pour `THORIUM_NUGGET` (`CNItems:186`). - ---- - -## 6. 🏗️ Design - -- **Inversion de couche `api/`** (cf. §1.1) — `api.multiblock`/`api.radiation` dépendent du `content` concret. -- **`MultiBlockManagerBeta` couplé à `ReactorControllerBlockEntity`** : la détection de pattern écrit `setMultiblockFacing` en **effet de bord** dans une BlockEntity concrète (mélange détection + mutation). Fix : retourner la `Direction`, laisser l'appelant l'appliquer. -- **Deux `DeferredRegister` concurrents** pour `ForgeRegistries.PARTICLE_TYPES` (`CNParticleRegistry` brut vs `CNParticleTypes` enum wrapper) — pas un bug (Forge le supporte) mais deux mécanismes/styles parallèles. -- **`controller` typé `ReactorControllerBlock`** (le Block singleton sans état positionnel) dans `ReactorInputEntity`/`ReactorOutputEntity` au lieu de la BlockEntity/BlockPos → champ qui n'apporte aucune info ; champ jamais lu dans `ReactorInputEntity`. -- **`RadiationRegistry` parallèle à `IRadiationSource`** sans règle de priorité → risque de double comptage latent (`RadiationCapability:116` additionne les deux inconditionnellement ; inoffensif aujourd'hui car aucun item n'est dans les deux). -- **`HudOverlay` sur-spécifiée** : `getPriority`/tri sans effet réel sur l'ordre Forge ; `HudRenderer` instancié comme champ alors qu'il est sans état. -- **`@Mod.EventBusSubscriber` sans modid** + `onServerTick()` no-op enregistré pour rien + nommage trompeur `CommentEvents`/`CommentEventClients`. -- **`api/` nommé `Beta`** : surface d'API provisoire promue dans le package censé être stable. -- **`ClothTagHelper`** : copie `base` puis l'écrase toujours (copie inutile dans le flux réel) ; `foundation/util` vs `foundation/utility` sans règle. - ---- - -## 7. ✅ Le bon (à conserver) - -- **Bootstrap idiomatique** : un `CreateRegistrate` + classes `CN*` par domaine appelées depuis `CreateNuclear.onInitialize()` → point unique prévisible ; wiring `DeferredRegister` bien séparé du forge-bus. -- **`api/` + `impl/` datapack registries** : `RodType`/`ReactorFluidType` data-driven avec Codecs + **Builder à validation explicite** (accumule les champs manquants, `IllegalStateException` précise, résolution config paresseuse au runtime) → réacteur extensible par datapack. Très bon design. -- **`RadiationCapability`** : recalcul de la radiation d'inventaire **gardé par un hash** (`InventoryHashUtil`), sync uniquement si `needsSync` → évite le travail par tick sur le hot path joueur. -- **`NuclearExplosionEntity`** : libération **symétrique** des chunks force-loadés (start tick / `remove()`), état `loadingChunks` persisté en NBT pour relâcher après reload. -- **Isolation compat** : `Mods.isLoaded` + pont `AlexscaveCompat` via cast `Object` → pas de `NoClassDefFoundError` quand Alex's Caves est absent. Record `SimpleMultiBlockPattern` immutable (`List.copyOf`/`Map.copyOf`). -- **`CNPackets`** (enum + `PacketType` à index auto) et **`CNTags`** (enum NameSpace factorisé, `matches()` typés) : peu de boilerplate, cohérent. -- **`CNAdvancementBehaviour`** : self-cleanup propre (retire les advancements obtenus, libère `playerId`), server-only, FakePlayer ignoré, persistance NBT. -- **`CNFanProcessingTypes`** : wrappers de recette statiques réutilisés (pas d'allocation par item sur le hot path). -- **`CNProcessingRecipeGen`** : agrégation des sous-générateurs derrière un `DataProvider` unique (`allOf` de `CompletableFuture`). -- **`NotifyUtil`** : gardes side serveur cohérentes, bons overloads `LangBuilder`/`MutableComponent`. -- Direction `controller/{manager,service,consumable}` (interfaces `I*` + impl `Default*`) : la bonne trajectoire stratégie/DI — **à terminer**. - ---- - -## 8. 📋 Plan d'action priorisé - -**Quick wins (≈1 ligne, fort impact)** — corriger d'abord : **B1** (`&& false`), **B2** (sync radiation), **B3** (cooldown), **B5** (`return null`), **B9** (palier radiation), **B18** (clé config) ; puis **B4** (loot thorium). - -**🔴 Priorité 1 — nettoyage à risque faible** -1. Supprimer les reliques V2 mortes : `lib.multiblock.manager.*`, `IBetterPattern`, builders non-aisle, framework keyframe, `CommentEventClients`, `possible code`, `CreateNuclearDamageSources`, `CNShapelessRecipeGen`, `RadiationOverlay`/`EasingHudOverlay`, `IrradiatedSurfaceRules` v1. → **gain le plus élevé pour le moindre risque.** -2. Mettre `run/` dans `.gitignore` (et le dé-tracker du repo). - -**🔴 Priorité 2 — bugs fonctionnels** -3. Traiter les bugs critiques + importants du §2. - -**🟠 Priorité 3 — dette structurelle** -4. Corriger l'**inversion de couche `api/`** : `api.multiblock`/`api.radiation` ne définissent que des interfaces/types ; le `content` dépend de l'api (retourner un `IReactorController` au lieu de `ReactorControllerBlockEntity` ; sortir le wiring `RodType`/`ReactorFluidType` de `api`). -5. **Terminer la décomposition** de `ReactorControllerBlockEntity` (BlockEntity = coordinateur mince, cible < 300 lignes, délégation complète à `manager`/`service`/`consumable`) ; résoudre les **2 systèmes de verrou de fluide** et les **2 `saveData`** en un seul. - -**🟡 Priorité 4 — cohésion** -6. Consolider la radiation en **un** module (api = `IRadiationSource` seul) ; extraire le framework de modèle hors de `content/explosion` ; créer un sous-package `registration/` ; fusionner `foundation/util` → `utility` ; router l'accès config via `ConfigValueResolver` ; renommer les symboles `Beta` ; **ajouter des tests** (`src/test` est vide). - ---- - -*Note : les findings de type bug/dead-code ont été vérifiés de façon adversariale ; 11 ont été réfutés et écartés du rapport. Les sévérités intègrent les corrections des vérificateurs (ex. plusieurs bugs « high » initiaux sont dormants/latents tant qu'un chemin précis n'est pas câblé — signalé au cas par cas ci-dessus).* diff --git a/build.gradle b/build.gradle index d6a0ba495..ead357de7 100644 --- a/build.gradle +++ b/build.gradle @@ -18,7 +18,7 @@ String gitHash = calculateGitHash() + (hasUnstaged() ? "-modified" : "") base { archivesName = "createnuclear-${artifact_minecraft_version}" group = mod_group_id - version = "${mod_version}-forge" + (dev && buildNumber != null ? "-${buildNumber}" : "") + version = 'forge' + (dev && buildNumber != null ? "-${buildNumber}" : "") } println "Java: ${System.getProperty 'java.version'}, " + @@ -29,8 +29,7 @@ println "Java: ${System.getProperty 'java.version'}, " + Provider refmap mixin { refmap = add(sourceSets.main, "createnuclear.refmap.json") - // add sourceSets.main, 'createnuclear.forge.refmap.json' - config 'createnuclear.forge.mixins.json' + config "createnuclear.forge.mixins.json" } idea { @@ -41,10 +40,13 @@ idea { } legacyForge { - version = "${minecraft_version}-${forge_version}" + version = "$minecraft_version-$forge_version" - accessTransformers { - from(file("src/main/resources/META-INF/accesstransformer.cfg")) + // TODO - Try turning this on later + validateAccessTransformers = false + + if (file("src/main/resources/META-INF/accesstransformer.cfg").exists()) { + accessTransformers.from "src/main/resources/META-INF/accesstransformer.cfg" } parchment { @@ -53,53 +55,36 @@ legacyForge { } mods { - "${mod_id}" { - sourceSet sourceSets.main + createnuclear { + sourceSet(sourceSets.main) } } - // Default run configurations. - // These can be tweaked, removed, or duplicated as needed. runs { // applies to all the run configs below configureEach { systemProperty("forge.logging.markers", "REGISTRIES") systemProperty("forge.logging.console.level", "info") - jvmArguments.addAll("-XX:+IgnoreUnrecognizedVMOptions", "-XX:+AllowEnhancedClassRedefinition") - //jvmArgument("-XX:-OmitStackTraceInFastThrow") // uncomment when you get exceptions with null messages etc - //jvmArgument("-XX:+UnlockCommercialFeatures") // uncomment for profiling + jvmArguments = ["-XX:+IgnoreUnrecognizedVMOptions", "-XX:+AllowEnhancedClassRedefinition"] + //jvmArgs("-XX:-OmitStackTraceInFastThrow") // uncomment when you get exceptions with null messages etc + //jvmArgs "-XX:+UnlockCommercialFeatures" // uncomment for profiling systemProperty("mixin.debug.export", "true") systemProperty("mixin.debug.verbose", "true") programArgument("-mixin.config=createnuclear.forge.mixins.json") - - systemProperty("mixin.env.remapRefMap", "true") - systemProperty("mixin.env.refMapRemappingFile", "${projectDir}/build/moddev/artifacts/intermediateToNamed.srg") } client { client() - gameDirectory = project.file('run') - } - client2 { - client() - gameDirectory = project.file('run/client2') - programArguments.addAll('--username', 'Dev2') + gameDirectory = project.file("run") } server { server() - } - // This run config launches GameTestServer and runs all registered gametests, then exits. - // By default, the server will crash when no gametests are provided. - // The gametest system is also enabled by default for other run configs under the /test command. - gameTestServer { - type = "gameTestServer" - gameDirectory = project.file('run/gametest') - systemProperty('forge.enabledGameTestNamespaces', mod_id) + gameDirectory = project.file("run/server") } data { @@ -118,10 +103,6 @@ legacyForge { } } -sourceSets.main.resources { - srcDir 'src/generated/resources' -} - repositories { maven { // location of the maven that hosts JEI files before January 2023 @@ -150,53 +131,59 @@ repositories { dependencies { /* other minecraft dependencies are here */ modImplementation("curse.maven:jade-324717:6106101") - + // compile against the JEI API but do not include it at runtime modCompileOnly("mezz.jei:jei-${minecraft_version}-common-api:${jei_version}") modCompileOnly("mezz.jei:jei-${minecraft_version}-forge-api:${jei_version}") - + // at runtime, use the full JEI jar for Forge - - //Alex's cave - modCompileOnly("curse.maven:alexs-caves-924854:5848216") - modCompileOnly("curse.maven:citadel-331936:6002521") - - modImplementation("com.simibubi.create:create-${minecraft_version}:${create_version}:slim") { transitive = false } - modImplementation("net.createmod.ponder:Ponder-Forge-${minecraft_version}:${ponder_version}") - modCompileOnly("dev.engine-room.flywheel:flywheel-forge-api-${minecraft_version}:${flywheel_version}") - modRuntimeOnly("dev.engine-room.flywheel:flywheel-forge-${minecraft_version}:${flywheel_version}") - modImplementation("com.tterrag.registrate:Registrate:${registrate_version}") - switch (recipe_viewer.toLowerCase(Locale.ROOT)) { case 'jei': modRuntimeOnly("mezz.jei:jei-${minecraft_version}-forge:${jei_version}"); break case "disabled": break default: println("Unknown recipe viewer specified: $recipe_viewer. Must be JEI or disabled.") } + modImplementation("com.simibubi.create:create-${minecraft_version}:${create_version}:slim") { transitive = false } + modImplementation("net.createmod.ponder:Ponder-Forge-${minecraft_version}:${ponder_version}") + modCompileOnly("dev.engine-room.flywheel:flywheel-forge-api-${minecraft_version}:${flywheel_version}") + modRuntimeOnly("dev.engine-room.flywheel:flywheel-forge-${minecraft_version}:${flywheel_version}") + modImplementation("com.tterrag.registrate:Registrate:${registrate_version}") + implementation("io.github.llamalad7:mixinextras-forge:${mixin_extras_version}") compileOnly(annotationProcessor("io.github.llamalad7:mixinextras-common:${mixin_extras_version}")) - annotationProcessor "org.spongepowered:mixin:${mixin_version}:processor" - - /** Tests **/ - testImplementation platform('org.junit:junit-bom:5.10.2') - testImplementation 'org.junit.jupiter:junit-jupiter' + // https://discord.com/channels/313125603924639766/725850371834118214/910619168821354497 + // Prevent Mixin annotation processor from getting into IntelliJ's annotation processor settings + // This allows 'Settings > Build, Execution, and Deployment > Build Tools > Gradle > Build and run using' set to IntelliJ to work correctly + if (!Boolean.getBoolean("idea.sync.active")) { + annotationProcessor "org.spongepowered:mixin:${mixin_version}:processor" + } } -test { - useJUnitPlatform() +sourceSets.main { + resources { + srcDir("src/generated/resources") + exclude(".cache/") + } + + blossom.javaSources { + property("version", mod_version) + property("gitCommit", gitHash.toString()) + } } processResources { var replaceProperties = [ - minecraft_version_range: minecraft_version_range, - forge_version_range: forge_version_range, + minecraft_version: minecraft_version, minecraft_version_range: minecraft_version_range, + forge_version: forge_version, forge_version_range: forge_version_range, loader_version_range: loader_version_range, mod_id: mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version, mod_authors: mod_authors, mod_description: mod_description, - create_version_range: create_version_range + create_version_range: create_version_range, ponder_version: ponder_version ] - inputs.properties replaceProperties + + // Replaces FML's magic file.jarVersion string with the correct version at build time. + replaceProperties.put("file", [jarVersion: project.version]) filesMatching(["META-INF/mods.toml"]) { expand(replaceProperties) @@ -333,6 +320,3 @@ boolean hasUnstaged() { return false } } - - - diff --git a/gradle.properties b/gradle.properties index bf792084d..cf5f024d7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -65,15 +65,15 @@ mod_id=createnuclear # The human-readable display name for the mod. mod_name=Create Nuclear # The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default. -mod_license=MIT +mod_license=All Rights Reserved # The mod version. See https://semver.org/ -mod_version=2.0.0 +mod_version=1.3.1 # The group ID for the mod. It is only important when publishing as an artifact to a Maven repository. # This should match the base package used for the mod sources. # See https://maven.apache.org/guides/mini/guide-naming-conventions.html mod_group_id=net.nuclearteam.createnuclear -# The authors of the mod. This is a simple text string used for display purposes in the mod list. -mod_authors=Create Nuclear Team -# The description of the mod. This is a simple multiline text string used for display purposes in the mod list. -mod_description=Create nuclear is a mod that adds a whole nuclear system to the Create mod. An optimized reactor produces over eight million SU. -mixin_config = 'createnuclear.forge.mixins.json' +# The authors of the mod. This is a simple text string that is used for display purposes in the mod list. +mod_authors=Create Nuclear +# The description of the mod. This is a simple multiline text string that is used for display purposes in the mod list. +mod_description=Create nuclear is a mod that adds a whole nuclear system to the create mod. An optimized reactor produces over two millions SU. +mixin_config = 'createnuclear.forge.mixins.json' \ No newline at end of file diff --git a/run/mods/Jade-1.20.1-Forge-11.12.2.jar.disabled b/run/mods/Jade-1.20.1-Forge-11.12.2.jar.disabled new file mode 100644 index 0000000000000000000000000000000000000000..5cecec75ccbd71058c27d89c8535a3c5377ec97a GIT binary patch literal 547818 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

mJZ)f)FeYT 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

(%%vzjv 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 ) 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

m; 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¨Z#%&WZ@dq&b_)a3AP$a_;y{~{e*EN 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 MDjK;*3I>4x038&EFaQ7m diff --git a/run/schematics/reactor9x9.nbt b/run/schematics/reactor9x9.nbt deleted file mode 100644 index 5951f274f7b3339990d0fb5f613e805b874007ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3029 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 diff --git a/run/schematics/reactor_t1_ponder.nbt b/run/schematics/reactor_t1_ponder.nbt deleted file mode 100644 index 44cd6ae659d2f5edfc57ae2b227f583f5d361240..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1442 zcmZ{a3sBMr9LN8FugI_rT^3=cIc50F_jIPFt&Aem%g2y>Pa{ecL!3yiqy(2~3d>jM zse!Ld(@HJOptF3`)SQvZm5DEu@||GQcH6D)cK5yC_w)Pwe)>!e4I6!z81N@jL`Yct z84^C;3V-$tF+74~P7I9)T7twxvDao?Y(j#m6ROBQ;IE!dx96r)pTtzDx`(DpH#7*ff-5EMjGxes;`w1J`4|NY+_8OJpOqHb6dmFxdGM!Ax#lZ*9R&51y{f{gyac? z_Q8cY(@BmRv04>#ZSr2HL2|PB+pM$?b9SIlg>`P}rJ$#dxdVh;({-{_uF}dV z;!~K&9Ac+?>xH3R0=wtxFX+rG$?oWLM!Dcx__ikSvID>*uvZE*WV||nvVqP9Y_CC@ zr|1~~Ez^I65`DBlRp1RYs|Y6Hx&wAI$0-4T#YRcQ`R#%0O-AK{Y4B}qa4iBWB}gY# zbfG7?z(3=>$f=YJm6QU(pU1SoD`{d1XhzW4keD%;{14C$kYZQuk>~=5oCE~J1e4xq zV=sOlC$BR9_o6b)kNp*W@yPU1&yQi-Cr7D)^%3O$U#G@yWK9#!xX(xOhOSL?9&6s9 zqslGb8U=)uqfyuPdA>40}A?EdTL3rX@JnHi-f1Nz zro9y$ltbntTC6DQj=xt<84HEc^E+(K=V4ecqrn_=-N zR4wObgsPo{@HHPb6+i#BegQC-RNRc3v~8C>w^>op%3nNFA%{bhnP3` zQGyynj`v8#FO&_zf~g<07duxu{TipcAQ>Vj-MBc5VRld(d$xFBw5fes%AGh-%aiiX zl8QPKddFLz$#VLI^=}Irq66k>q4iVgweORb_hl6m5)5U6bRlkrVFwE!#pV*lpR5ga zab&f8S^2^gI=a61pup!_kavL!nyihTFuKuua33$5zNSj2Un9F^(V^A77mIwpp&i04 znck7+yqY~EODtVzF8MNsU#|aN%NLs0Q@BXwr&9jTL}JbQ{=d~_T}U08`1j^(Brd@)V~DJDodN8J!ab3++lb%Lg1Lp6Rd9yWUV)vHyPe OD1O+*B1ZW=0Q?1jZqP;m diff --git a/run/schematics/reactor_t2.nbt b/run/schematics/reactor_t2.nbt deleted file mode 100644 index b619d29e6dc5a630466fcd1414bba94ece03b1ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1785 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 E0T7%}Z~y=R diff --git a/run/schematics/reactor_t3.nbt b/run/schematics/reactor_t3.nbt deleted file mode 100644 index d94dc85fed31ec0479979a691b6ef66bd0db86f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3230 zcmb7EX;@QN8V1y&!eCukWSx<5MFXe-As|o{Dj1_iWk4We#c? zr5c~YHY+Rha5d6hmE6^NS@P{=t=EX+&?nR++yvfpc&sj7IV~BJ+WlByzHCypgXc^U z6yUS>i+SXNfWHgG?R#Cq$)N!)PV2O7WJ?JV3Qtwa^IF>+4Z`B%bPezktAW+Z`ZaE3 zY4_Jz={CX5%Mw~H9c6~u;0w(IpUI6EAa!a=I7UNWS;*!@AC{H&?B>q?xI~}V{#kV` zW2m42S>LKspDZMr>WX`Ci@2%NR|-$r1zv@dD~2i-1|ceA_(Mo-Cp+yR0|MGQ@Y(bV zc#1KErZuuMtE~R)ZY{zVK~P2hD?9C^dmP{UgBpZ4zByKO;V{}+$0(C}@!cgG1V&r% zw?Myqcd=lsm+1k%-mbcNB*HS<&ly+mL>HE^f_3F zpAMRF>H4+K9nJvF_qXe&^c(Y0_T!t6`{iGyn}9=RY4#wnab9`{*4_fn0|-pxlE&kN zGJs-#m2D4)Bfi0)g`7TT0Fu9U)}DSMEqyL5tAJ5fZ6u?qgR!6E!dP18&IijcpWpeN zCV;DZ(Ap{covGDmQynfyYLZ(bLk{P zY5eKzqc}*aYxO^Y@arQgnfih;c}e~vK<4AKyPzFd#3C8UA%bvlI6dX{8K~Rl5NX-1 zJ68gR%UE9E&#rC=T(j5}R}Tcn`Z+(K-HJr&2<|)`2LgL?Vn51!0O$K1nPl5 zfO=1c;{1*_%$8TS7}y}JQXoWNgjn(+LoA&`o|Sh9jx zx)rHr$!GX?mgp~x9n#SW*$^|+DuZ=4JZW<9Zt5NM zhGTBe3D+yvgqZX;pTKji?CA4P3q}H}Z6*39f_W!Cu0XWm3wzK3W@+prI?X#Ib^dAn zU*}#FRn=!SnVd$Ncao+yd@(Rcdhh2iqK1&gzcUsERFkCEAvUd7(qcW1Uv$_V!VPmn zZO`iuQBjA(4EppK@rhO!{e;J82J7ew^Ylh4y``VOZ_C9X!U3jkxx-Ca!L;Z_Uv7PD z&G{gM15B-QpPngB%arvmq#6Cp=o13FH3;dZa$>{Iwt6$d{q6cD_u6%{N=^vQWNESv z7d&9Tv9ZrSGitU#o@?s6G;-92JIjDiqjZZ2U$Hw2vsXH*%EFXsyG0TxxGPepl;9@D z&4^m>)8E+m@vo!}1k#!+N=x>teh%U4Z99>j48FMU!&Z|}`;to1{9n1Vt~TQn^RMml zO1NrvDM!_3uUcexD(Pk~2)_Do#5ZD>ab|1AuiR#Ja835+q1oUUvxa>%vr8Q)5JopM zTA#h$zrcd4cg+_42&7%jIt+4w#W+#M)r%-1GWZ!c#e+SE3h_y=L@pCdN&*0}0lBRd z)R5aVg^8Di{c~${n3^C^gQKcnjpEhVeh{f$=)VVv<}_X(2wVpv?@T0a0vK=DpvRY} ze$Qa**8TWqu`5HbokV&hM(nH;HqX6)Fi4xL7IFwE0DaR?PW=q;qto-|D}9?Qbp5?QAngec~TrL zmZf)lZz4KcbTu+43Xiq>mStY>9qf+Jjdr0{al%oC;+BmW(eA?)mDL*$1{fIDwH?Hi zTjYPy9M6=jyxnFtP0MUh$ha4PgR}J;O zq)nyA%W%g9b~`+Qt!}s>*GDR`FJ?`ybnF_`+4~^cx=Jm^Hasjm z;d9|HeH8vOAB)F@ruiov+6LQqNuH|LUgf?fVv+zvFU$sc3T0I=j59_E=|k9GM-H@L<#BHo+!TPH<^5Kfy>)_ILSvItruCY61*$^Ach^`^cu+2pF)go!+P%!E_rwE+{HG~JO3O{or%8$G`By;Q)dcu z<5}5BoYr(TL%9D7y7MOsRMA{~bC6elf(NAq;c0HYuLdWLl1_{*Uzk24BdZR1prK!N1SZ~TCq;(fDW=Z8Z*s}En4pR+-Z!E0Sv1OYc-hNwMkZo)_# zOT)bA3SZ58H>wk#clAK9bn#NW%h6Y8=KR uWQtvsD)Jodr8OqwyR_Dsc1hFBYvtLP9Ztn^MJtP<>28_6@##YijsF1<^}%TX diff --git a/run/schematics/reactor_t3_ponder.nbt b/run/schematics/reactor_t3_ponder.nbt deleted file mode 100644 index 9676d99e7c61a319fc77b41f4109cef3c270af4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3700 zcmbuC3s6&69>#$n2ukQk1ylm7PHDjvQF)Y@D~h8b2W`q3+zGPA`p1dC)NV??bA8c{ShpfWLK10fE*nHGJNc74sz>&6_ znTm1d)jhpZ48Hr^6yo->^B)Dn9bf^^kV{ z*VpdQ4{o$;X8%Hays<7&Io2}V7f@a!`k*(s>a|5ZJ5aeZQ7#V-ovF*$Ju)4F6jI6} zf1@^-_!qOom?){eZ&!NB$G%O-05u9)708YSPaML1oJ-T=LRw;px{SOWualL=g8E!YjpA_#w?Rx)1$O7s zmcdW)#~cLuUc~LyNq(`@*SH~W zFRslEnN0Uioz-^p*s=-pA~uP?7t-uGr}wEA{4H$G@*MQ?eX7N^`-tkC$i zgEe6VKjkgpW0CKckm7Ti;r-rtT?GVczbFl55xwgCfYaVB-1tPtt?G%CPx}=sL%R^sEXMgOItTmssie> zAhigOgD;MC)>XiT3T{L9icuJPLv)O7;6a^1MqG4Rz=H|*dZP#Jwb|&`X$c2Hi^Jhh z*Bzxc2(XxH5A0Z!O@4o`&Cu)kGCumFiX!#PxIp|w@|fM7KBQrrYA@Qm<82QIYndOn zmlolnirdvqT!(oWOWQnBss^57LE8TdV&8Q-wME@nb7IoU)p%oe&lWeKtAbm*|BBgc zS(?VPwr8gg^`!jqQfCd9nt$KT49IcAShL&^ut6FTZ&YyGx`_zP#aNooNU17l^Jk&W zyXg|T^#S*r3CdvjtSE$YXQi=LfOz*x-hRBwD|z-(!@XT)*Ea7w#3}UuYdq_mNspbH zm{6A6s#YDiVt{gx7SSI|L(Z9M#MZxLuRmOx1|Nrh=`qBJl?rZk+p%ImG67!)6;Pua zHq&mR+Fvnmx20)jUSno!Epc?Ib8)Nr2 zJJ3zk#0*YZu6|O%hfCKVg(_&+(H2cJbQplWkI)TB#*Z z$xm)I-Ql%Y`aRi!C4HM;?g*WsN_O*P`b0{S72{}z0LHiT%blPzd6I`b*(oBW(2DUz zhQNFdw^1e5L<%o^jA!4rMZ~&1BEWKh0%Xa~jV&67E+QAgvcx2ms0`d;HV0 z9nt$=)EdXc*i8Le*h#Vt*PWW4^syZo6mL3Z%kN|xyZ;+Z)D{*j$VphRnx0dG z{ao$#(T(n&OmQ*)%=Gq7y_er=37=p69kh66z(Ab%PXBXA?7<`!|j9`K><K%F~y0pK@rI`}YJUo04;29Wi@O zke4fRCPZ?K^u$+vw@3z3rsqS8hVkK8(z76`8}kgOs0M$bfz(!*R8q^V26{_+dV7Zx z@SJjf5M#>whX514_|o%X$=R;tG!vkmWPjzy%<-tF6;IJ}Pl!N?(Z(0q^eU@n2Csz2 zFfPXtLvmvAKbOU2Dtkqp6h@sJ@j64<>%+UK3T*y z=*DaKY@vf)=)J5;*)_W~rez<`K;$X5v>+QApp%_Z^?Ar%*Tf)tT}3m&v)|Gp)G!V0 z;)pV(BK2Gowdi$Mn+Xp6mfOkcAD~^<{}<*G9K>_@)?&9qqSn2-t1yPUL*L=WMO^zW z%|g?^N4q$oO!JVbu8GI*)ls zU)PY(f|iE<3|VTPFZSO?zdAWNeJ|g2XNJ=^UztzOeC|faWAm<9-@X!4K$j_xNO&s~ zcOi&ZN!*1XUOjYSx?18c1o7&j3y0?Fq3ieup$kXxYKaR6v78}c^KBg~jLP|=^4=n! zf^d@0=zy*iQGEK*l_~j$6qkLz*TUs5fn$mmLOUz6&d>sHiY%9~;c>k)I5!anzrjQ8PY< zQaU&Ev8jgRFGT!sTo-c3^(>N2ZwtS1)Te+y&Q9D6Msc)$oAOVe@n>ew`g)S|3xyWs R*)2001fE~%P7732{sVvDPLu!u diff --git a/run/schematics/reactorhdsbquifu.nbt b/run/schematics/reactorhdsbquifu.nbt deleted file mode 100644 index 1fb170fcdbe5f19636c1039cae0c28e2a2c68f83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1038 zcmb2|=HSSev&~}qUzD1dT#{duky4ygSeltus+X5k!mxJs`Mk>x0>{$R)3z4|2&OwU zxj(q09aFV(g4PZt^Lrs;eX?uK6{;Sdx%?r^hN6M!zcJe~ z(CyZ=^0FtP5!TXkH%x4)P*IfgJuz1<>DKm#jdv^;+RX`&w_DNQ zbK^xzugVc+&W{;M?VbEmfxkokLKMaK016F)l%7hP|;W2#v0dm|zae$dlyBA#0)7Zkz^|r}rw*#|%iQo6M1@~B9@h)G^whD+E*j7bewym{$w3f5( z$o0B;@1C3}C@~HQH3;aF)~Mv2vWLwpjyZK{?fp=_V9@K1gnCi5^OEF-nz=9x-5KWdx z+sZqC`g-n*8N&J1NJwWX}r~bA4*qn8#gV&=>uzyKZyc*WBw2nx`C|oi&W-4^Ax)3!eV|^5fLX z+rO^*KIOh7Vb<>{QyXLS>c;c8$tmmG?zSwuagXh7-y-$*pJvp5S*SaE){8&vf7yD| K+>?8a7#IMPeE7@& diff --git a/run/schematics/setup.nbt b/run/schematics/setup.nbt deleted file mode 100644 index e753f36bf8aac6b6c0537a75a3d786e427d6bc43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1296 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 IwuTH004lC}cK`qY diff --git a/src/generated/resources/.cache/09bd1f7b209874b6c29086df91c49669495dd477 b/src/generated/resources/.cache/09bd1f7b209874b6c29086df91c49669495dd477 deleted file mode 100644 index 535144376..000000000 --- a/src/generated/resources/.cache/09bd1f7b209874b6c29086df91c49669495dd477 +++ /dev/null @@ -1,2 +0,0 @@ -// 1.20.1 2026-08-21T19:32:31.3311821 CreateNuclear's Custom Sounds -469b4ea17371681fcb9a666c8cf8b51176a8df3b assets/createnuclear/sounds.json diff --git a/src/generated/resources/.cache/15812fa7bc190aa8f0a8644088c7ff563925e506 b/src/generated/resources/.cache/15812fa7bc190aa8f0a8644088c7ff563925e506 index b5df22342..7c8ad67ce 100644 --- a/src/generated/resources/.cache/15812fa7bc190aa8f0a8644088c7ff563925e506 +++ b/src/generated/resources/.cache/15812fa7bc190aa8f0a8644088c7ff563925e506 @@ -1,24 +1,17 @@ -// 1.20.1 2026-08-21T19:32:31.337439 CreateNuclear's Processing Recipes -bccfe326d6c91bd2df207a38225fbca413e1013f data/createnuclear/recipes/compacting/thorium_fluid_to_thorium_ingot.json +// 1.20.1 2025-11-11T13:56:47.9570936 CreateNuclear's Processing Recipes c711d032a04e1a9350ad9bc4d9c4d74f54689862 data/createnuclear/recipes/compacting/uranium_fluid_to_yellowcake.json 33becbc558bd2fbe277be096b292c0093f84e44c data/createnuclear/recipes/crushing/coal.json 2a8b609dba5bad88511d9c9a80cf6fb582b18c36 data/createnuclear/recipes/crushing/fix/crushed_raw_uranium.json 57154e35ebb09170bb39f5b3a72ecd49182697f2 data/createnuclear/recipes/crushing/granite.json -682ceb2386fe56cd47e46d7ebb3d8185ac78515b data/createnuclear/recipes/crushing/nitrate.json 4feb59d85e86e34ed565c18b6a4df120fe050bc7 data/createnuclear/recipes/crushing/raw_copper.json -c0e1f33d8e91a3133e5acf6e4d3eb5ea5cd23471 data/createnuclear/recipes/crushing/raw_thorium.json -169c09c5947ddf8bdc8727af3c71368880b0c128 data/createnuclear/recipes/crushing/raw_thorium_block.json +cf17713133d3e05e99164e2ea6649de3aef017fd data/createnuclear/recipes/crushing/raw_uranium_block.json 26d2787e831b9986ed6f90f8ea803d5fdc544bf5 data/createnuclear/recipes/crushing/raw_zinc.json -87d2e1022c9eeb986bdc23b068fe7cf473ee42f1 data/createnuclear/recipes/deploying/reactor_fluid_input_from_fluid_pipe_and_reactor_casing.json -04c671106607c2c93c0706f690cd876fb072dd56 data/createnuclear/recipes/deploying/reactor_output_from_shaft_and_reactor_casing.json -58a34e84d942cb4250969388f78282270215c227 data/createnuclear/recipes/deploying/reactor_rod_input_from_hopper_and_reactor_casing.json e42be7d17c5e057e62c4b1176cbf43319a157f51 data/createnuclear/recipes/enriched/enriched_yellowcake.json 74555eb2cce0827f99dc5c4ff91362bdaecad725 data/createnuclear/recipes/enriched/enriching_campfire.json d0a30a8942f3e81d11afa21a93037916601c38cb data/createnuclear/recipes/item_application/reactor_casing_from_steel_and_brass_casing.json -a9d114da800657c53caabcb1369137ede6746362 data/createnuclear/recipes/mixing/liquid_nitrogen.json +f2d3a2dbcb9135e31261cc8408f11cd07038a826 data/createnuclear/recipes/item_application/reactor_input_from_hopper_and_reactor_casing.json +91c07d7804d0960aaa17a6258f00f1731ca458f5 data/createnuclear/recipes/item_application/reactor_output_from_shaft_and_reactor_casing.json 7fc7695cd03577131096e9695170193044f8bc1a data/createnuclear/recipes/mixing/steel.json -4bc858c73385e4309ef250b163cc696244a64767 data/createnuclear/recipes/mixing/thorium_fluid.json 23e57de458330d04dfebff8070b44b3b1b2718eb data/createnuclear/recipes/mixing/uranium_fluid.json -8e4e330293a702522ed424488055fe4d8d68c22d data/createnuclear/recipes/pressing/graphene.json -f6f427d92e7680c47bc8d25f3d023ae6ce465615 data/createnuclear/recipes/snow_powder/cooled_nitrogen_concentrate.json +ee4d2bf63449ba88826be263cf98e4bba2927ced data/createnuclear/recipes/pressing/graphene.json 0756d627739cbbc2653aa3fbde9945ec11f2eace data/createnuclear/recipes/splashing/crushed_raw_lead.json diff --git a/src/generated/resources/.cache/3c9854c256b4d84dd9b4b92d1a03ceb45298124f b/src/generated/resources/.cache/3c9854c256b4d84dd9b4b92d1a03ceb45298124f index a3fd9d3c7..480cb52b7 100644 --- a/src/generated/resources/.cache/3c9854c256b4d84dd9b4b92d1a03ceb45298124f +++ b/src/generated/resources/.cache/3c9854c256b4d84dd9b4b92d1a03ceb45298124f @@ -1,4 +1,4 @@ -// 1.20.1 2026-08-21T20:03:05.6279155 Registrate Provider for createnuclear [Recipes, Advancements, Loot Tables, Tags (blocks), Tags (items), Tags (fluids), Tags (entity_types), Blockstates, Item models, Lang (en_us/en_ud)] +// 1.20.1 2025-11-11T13:56:47.9632247 Registrate Provider for createnuclear [Recipes, Advancements, Loot Tables, Tags (blocks), Tags (items), Tags (fluids), Tags (entity_types), Blockstates, Item models, Lang (en_us/en_ud)] 0b2c76c9cff305eacfdfb57c4b703f94ca6dc903 assets/createnuclear/blockstates/autunite.json 5d06bc544bcbeb7443178d66955bb5101cf696da assets/createnuclear/blockstates/autunite_pillar.json 5b375444ac5057e63776f4991589c57824574b4a assets/createnuclear/blockstates/cut_autunite.json @@ -10,8 +10,6 @@ b88d65e7a3393caeaed8d504bf6c4615767371aa assets/createnuclear/blockstates/cut_au 56c308e675a047a3d28757377e61e5f79c6384e3 assets/createnuclear/blockstates/cut_autunite_stairs.json 98d386985f7c185f1acab25b9d606828f788769f assets/createnuclear/blockstates/cut_autunite_wall.json 5cf183e5277aea7ac5eb2bfa88737db909c6244d assets/createnuclear/blockstates/deepslate_lead_ore.json -ba89776428914de9e6a4d068ae695ddc5d7a4881 assets/createnuclear/blockstates/deepslate_nitrate_ore.json -e4edd1e8b7aecc00e45f4c154b302d3581e18ce9 assets/createnuclear/blockstates/deepslate_thorium_ore.json a6f90dfcfc0659663335d4c80129ce41d0c8e47a assets/createnuclear/blockstates/deepslate_uranium_ore.json e11c7fa5830b0877af69bb18e650d2b1e6f90027 assets/createnuclear/blockstates/enriched_soul_soil.json f6b762b1e80656d932e990210b43e4bfb209e4d8 assets/createnuclear/blockstates/enriching_campfire.json @@ -19,37 +17,29 @@ f6b762b1e80656d932e990210b43e4bfb209e4d8 assets/createnuclear/blockstates/enrich 98dd6f667ccef1f8f1d332b42b146a6c0bbfb0db assets/createnuclear/blockstates/layered_autunite.json f10bbdbab6112c58bebf2d98dc0ed3eb9370c09c assets/createnuclear/blockstates/lead_block.json 300b8a29d6a440a60320133481041671dde65448 assets/createnuclear/blockstates/lead_ore.json -c8479fd99df3917545c86ee3ea9bfe981bf762e7 assets/createnuclear/blockstates/nitrate_ore.json -539751a5a2a28445f570cb61b89b16c31e7d5ad0 assets/createnuclear/blockstates/nitrogen.json 1eed8de7f7b90d46d3e4fb6a0e7e9abf10a8a78f assets/createnuclear/blockstates/polished_cut_autunite.json 462d22ea4a021cc368721fdb841c8a9b9176c06d assets/createnuclear/blockstates/polished_cut_autunite_slab.json 76a9a39503654b94cbe01e249292ed280446bbb6 assets/createnuclear/blockstates/polished_cut_autunite_stairs.json f628f8c7aa1e150ad2b5a3ce87dbe7f00b462e74 assets/createnuclear/blockstates/polished_cut_autunite_wall.json 8195d52278bf58414faaaec6067905635aaa29d5 assets/createnuclear/blockstates/raw_lead_block.json -5db59637c8fdd94d90bc9748c10769eb54f97224 assets/createnuclear/blockstates/raw_thorium_block.json 63aaf78c3e0c16c2f37b069c5392e3d1a93ac058 assets/createnuclear/blockstates/raw_uranium_block.json -1c9953bedf6cec725a6db7a199d826dcdfe9dfa7 assets/createnuclear/blockstates/reactor_alarm.json 0fbc9288622efc18fe39b6c8ba89e7e2281dee26 assets/createnuclear/blockstates/reactor_casing.json -0b5bd864f1e3b0c6b0ce868245da96fd8070fb21 assets/createnuclear/blockstates/reactor_controller.json +60ca260d5b5bcd975c0a3918b461748786cde95e assets/createnuclear/blockstates/reactor_controller.json 3c259041f317bb8868fb4f177c457fc12b8d28f5 assets/createnuclear/blockstates/reactor_cooler.json 3cced3f7d35371f1881b0485ee324788adcd2c74 assets/createnuclear/blockstates/reactor_core.json -0d8ab9ccc729b8e78539a2fab7b52b6be0afb24b assets/createnuclear/blockstates/reactor_fluid_input.json ff68065029f7d47434aaf3f60e5ec3319302d2d8 assets/createnuclear/blockstates/reactor_frame.json +797bb3045272b742be75c5dc1a511a1c2acaa877 assets/createnuclear/blockstates/reactor_input.json 36ee5c127b0548502d15bc16a638a5bac40df1b6 assets/createnuclear/blockstates/reactor_output.json -daa6730e5e83972faea54e62eb1cf0fe36aaef0a assets/createnuclear/blockstates/reactor_rod_input.json f7504d5f748fe938bf07d2eb5d0ba46bbfa0499d assets/createnuclear/blockstates/reinforced_glass.json f9dd0a30be6d92e85fd7c3dde4f1b732f63d35ce assets/createnuclear/blockstates/small_autunite_brick.json 533317e2fc9ab18b71dea2fecaec599533a864c4 assets/createnuclear/blockstates/small_autunite_brick_slab.json b9c915389ea6cf8338d20c48e908591f8baa2108 assets/createnuclear/blockstates/small_autunite_brick_stairs.json a2fc21fa320e677fe7690b260ee3f57ebdbd50b6 assets/createnuclear/blockstates/small_autunite_brick_wall.json 57c846a957e9250bc45f2f1091bf3f78b2a77344 assets/createnuclear/blockstates/steel_block.json -3134eef054a6f9f461bf774630241414614a9109 assets/createnuclear/blockstates/thorium.json -3c5ff75a6dc4ba05ac94e0f2435e88821cd848ee assets/createnuclear/blockstates/thorium_block.json -643a4d44b491a84d0d26e1a8944dffc40e83ce14 assets/createnuclear/blockstates/thorium_ore.json de2884054a21315d8b167f64b206be331d388420 assets/createnuclear/blockstates/uranium.json 4557f548df100ae1d05e3b5711797225f6a39673 assets/createnuclear/blockstates/uranium_ore.json -2a47c9113005b370e50f09538c89565b2e16861f assets/createnuclear/lang/en_ud.json -1fa11213d57a5a8a26aeec933cad87e8a35acbcf assets/createnuclear/lang/en_us.json +27f15cf0f283a9dbd23b2af0069bffb349080a57 assets/createnuclear/lang/en_ud.json +2e3ff05dfc61519481e228d1b85e1c3e5e4ad55c assets/createnuclear/lang/en_us.json a8495d2cd5e38213683becaf1c84b2852f8b06f5 assets/createnuclear/models/block/autunite_natural_0.json 29394a22ee8655dc22ea51563411505fbcfd2dab assets/createnuclear/models/block/autunite_natural_1.json 9e4f83de1ca7a9ab5363f43fc7c3f7f4ec6164d5 assets/createnuclear/models/block/autunite_natural_2.json @@ -75,15 +65,11 @@ e1e1e4bff55028860d776d8ecb992547fa12b1b5 assets/createnuclear/models/block/cut_a baced15580735dd63848a96763f8c7ffe61f3376 assets/createnuclear/models/block/cut_autunite_wall_side.json cd15b5be0dca5f621266b157b424ac37dac859dd assets/createnuclear/models/block/cut_autunite_wall_side_tall.json 9a589577d80aa23ac97312bda605b5512eff5167 assets/createnuclear/models/block/deepslate_lead_ore.json -1a125ab1e392f50375ea2f4421adc8106c5ac7be assets/createnuclear/models/block/deepslate_nitrate_ore.json -6fa74ed345ab06422eca4c254f9108b4dfabfd78 assets/createnuclear/models/block/deepslate_thorium_ore.json 6793dd91b730f4c9abea29215de16cd0751d8cbd assets/createnuclear/models/block/deepslate_uranium_ore.json e1b8fdc0555a1fdabda54f66cca868e444d1110b assets/createnuclear/models/block/enriched_soul_soil.json 8408a3894e9ca6e45e738b81f0a1932a0b2f86a5 assets/createnuclear/models/block/layered_autunite.json fd642aefed8f59f5575c96ad1a0251e7773f3909 assets/createnuclear/models/block/lead_block.json c9757e3fd9841ee17366b1d88563df6ea8106513 assets/createnuclear/models/block/lead_ore.json -ed7fef54fcaf191778ffdb588ed62fa72ec892b4 assets/createnuclear/models/block/nitrate_ore.json -20a57f470b6d6ce6822c61da93e09e95bad6deee assets/createnuclear/models/block/nitrogen.json 460e9ac2c0a90607b74afc5823b737a2867a35e3 assets/createnuclear/models/block/polished_cut_autunite.json 8d0e97cda9e4098e0aa8dca93445d3b52150dcfa assets/createnuclear/models/block/polished_cut_autunite_slab.json 4fa87093074c0a325ea50ab2d3c9725a90a11e1c assets/createnuclear/models/block/polished_cut_autunite_slab_double.json @@ -95,12 +81,7 @@ a251d75552efea796382a4124659f9d39606461b assets/createnuclear/models/block/polis ad989d89e7b80a30e0860fb0f1418013fe3355d2 assets/createnuclear/models/block/polished_cut_autunite_wall_side.json b950ac6ca2df77ffe3abd02e13c38567602e5536 assets/createnuclear/models/block/polished_cut_autunite_wall_side_tall.json cf8b4d604330762358b21b6e079aaab1eb2987f4 assets/createnuclear/models/block/raw_lead_block.json -de9b4dee9580161263fa8020d326ac5fe4e38ed4 assets/createnuclear/models/block/raw_thorium_block.json 561c9f9a4e153fc648a3c7224812c71c8ac2da5c assets/createnuclear/models/block/raw_uranium_block.json -dedbaa09b31d53c446144816edf216d4c20253df assets/createnuclear/models/block/reactor/controller/off.json -988faa4b7af770a8256ea25247e333cbc9d14eca assets/createnuclear/models/block/reactor/controller/on.json -d58fcfe99b438b77b4a2dd8d0dd9e1f35d037bae assets/createnuclear/models/block/reactor/controller/standby.json -d5acc57be1c8ccc3e61c40cf11856933d35803b3 assets/createnuclear/models/block/reactor_alarm.json 7cdeee7f4740b6a86802354534be24dbb251e211 assets/createnuclear/models/block/reinforced_glass.json e94d3eb865d17234b18241d89acdec2b10a1d21a assets/createnuclear/models/block/small_autunite_brick.json 2d0c4071223fd38069cfdac403b33bd2925d6750 assets/createnuclear/models/block/small_autunite_brick_slab.json @@ -112,89 +93,26 @@ f99b30bd0cb3a8b78ed88a3a17b35b512c69ee06 assets/createnuclear/models/block/small 093bb2418968291015e9d3122755af3fd0b948d4 assets/createnuclear/models/block/small_autunite_brick_wall_side.json 5a9a262da20c1b7053276c444bff017e73c923c9 assets/createnuclear/models/block/small_autunite_brick_wall_side_tall.json 47f627eaccbd07bf81d1c45f95ebcc88994ad757 assets/createnuclear/models/block/steel_block.json -9333acc5ef34d03e00e0eaf24a3b48f2704a15c1 assets/createnuclear/models/block/thorium.json -9d2613725484de94788ba5075854eb225eaa4936 assets/createnuclear/models/block/thorium_block.json -e27878149b45eefa8673f2b86b6f491e2ed7a80f assets/createnuclear/models/block/thorium_ore.json d234edb3b6bc81b7300ee65722973b66db0b82d9 assets/createnuclear/models/block/uranium.json a4d5ee44c830e329034a46792280edea53343034 assets/createnuclear/models/block/uranium_ore.json +fba1c32ae3c38d735ebb0b4c3912afc8f9e9cde4 assets/createnuclear/models/item/anti_radiation_boots.json 29394a22ee8655dc22ea51563411505fbcfd2dab assets/createnuclear/models/item/autunite.json 30b11d8da5d02a3e9cebb739b3b9efbee087573c assets/createnuclear/models/item/autunite_pillar.json -dd462819c7477f9d416f6783b27651385d3ac16f assets/createnuclear/models/item/biome_irradiation_extractor.json -55f1cb77f9e4decaa0ed9a08e71aa861c6e05366 assets/createnuclear/models/item/biome_irradiation_extractor/full.json -c9ea333225e88893332265930dc3a52dce185cf9 assets/createnuclear/models/item/biome_irradiation_extractor/half.json -0cbeee214db51866795c62777e45ca5ed980d7e7 assets/createnuclear/models/item/biome_irradiation_extractor/quarter.json -c8a996760a2e68b408df64fe3702fd8933908e35 assets/createnuclear/models/item/biome_irradiation_extractor/three_quarters.json +f8e44e53a7bc368d4c159769bb071eef6d28d856 assets/createnuclear/models/item/black_anti_radiation_chestplate.json +82a63e5c93daac9c5430ae77aa8d10b1bddbc2c7 assets/createnuclear/models/item/black_anti_radiation_helmet.json +2d0a3f0d2dd0fab5b73c7b8291a5eb3a7921157a assets/createnuclear/models/item/black_anti_radiation_leggings.json 3036f3b383b40ca2021856366cd0f01cb279285b assets/createnuclear/models/item/black_cloth.json +288c9245496eb0020ace0481a4d4ac26df876063 assets/createnuclear/models/item/blue_anti_radiation_chestplate.json +b8574d7ee3d3e733dab79700062554cf4b58bd6f assets/createnuclear/models/item/blue_anti_radiation_helmet.json +ed88d15d2f1a4af012371d523fb3b95bcedfad28 assets/createnuclear/models/item/blue_anti_radiation_leggings.json 3a5955f81eeed80e907bf8e2ee4df14fe42843f0 assets/createnuclear/models/item/blue_cloth.json +2e364d92951412b2dd7d9fbb0209fc8f3194bcd5 assets/createnuclear/models/item/brown_anti_radiation_chestplate.json +d61337a67071319320d75383a62ecac11c3222d1 assets/createnuclear/models/item/brown_anti_radiation_helmet.json +ce17b82389ca226bc9e55072ae0dab1ef049e96f assets/createnuclear/models/item/brown_anti_radiation_leggings.json 8cdcca32a87171e2c709e762165330b2f0389f90 assets/createnuclear/models/item/brown_cloth.json 63ec6c618a3a23eab4cab9c52d7d3250de9b516e assets/createnuclear/models/item/cat_irradiated_spawn_egg.json 63ec6c618a3a23eab4cab9c52d7d3250de9b516e assets/createnuclear/models/item/chicken_irradiated_spawn_egg.json 047d097f30f9586494547715d07271c6994acd18 assets/createnuclear/models/item/coal_dust.json -bf6071ba9dac8aa186d7eff1687fd0c49c9e83d4 assets/createnuclear/models/item/colored/black_anti_radiation_boots.json -5e5029f1eced6b6588c6bf0a8a24412769be2032 assets/createnuclear/models/item/colored/black_anti_radiation_chestplate.json -c9a0fd5c17d33650f929ea28e753f1524b28df8e assets/createnuclear/models/item/colored/black_anti_radiation_helmet.json -8d35357fdf69ae42b16a529c58f13e3286a36e96 assets/createnuclear/models/item/colored/black_anti_radiation_leggings.json -2e4e4388510043760a1686cf2a535b95e4e11746 assets/createnuclear/models/item/colored/blue_anti_radiation_boots.json -e630329b2f6072a5e03e657f3c7c04f1e19ec6f0 assets/createnuclear/models/item/colored/blue_anti_radiation_chestplate.json -11858d3d90ff03ffb533d33c6a2dc6736f954c1a assets/createnuclear/models/item/colored/blue_anti_radiation_helmet.json -a19e265184d7df73f6c465d24f23a6566d9b08cc assets/createnuclear/models/item/colored/blue_anti_radiation_leggings.json -af2f19bf91ad723971afbe71c93a3fb1ef9e9b80 assets/createnuclear/models/item/colored/brown_anti_radiation_boots.json -9f2490080037e0cc9580e1939957243d7d80f494 assets/createnuclear/models/item/colored/brown_anti_radiation_chestplate.json -5dc65bb458012228b982eebb3b292aaea048f129 assets/createnuclear/models/item/colored/brown_anti_radiation_helmet.json -e6f5233fec76488fed7f01a8fc6dd13e369bb99c assets/createnuclear/models/item/colored/brown_anti_radiation_leggings.json -ccbfebe4c6428606495ec9d95d03cba12f0614c3 assets/createnuclear/models/item/colored/cyan_anti_radiation_boots.json -2922f5f250e65244329fa2e8a9fc063252f1c384 assets/createnuclear/models/item/colored/cyan_anti_radiation_chestplate.json -92b43a2cde30b9485d7abbdadfda5de7df745f27 assets/createnuclear/models/item/colored/cyan_anti_radiation_helmet.json -1899b326e3ae6b628d793a988839e940da7d4184 assets/createnuclear/models/item/colored/cyan_anti_radiation_leggings.json -135d0ef2e307cacde2fc7834ff599f175f708321 assets/createnuclear/models/item/colored/gray_anti_radiation_boots.json -c7a2bcf4933ee6530668468e2d750a766685b6d8 assets/createnuclear/models/item/colored/gray_anti_radiation_chestplate.json -eb475bbcb4fcc6ef33247a8d828a5f7cebc9bd17 assets/createnuclear/models/item/colored/gray_anti_radiation_helmet.json -8dc41293aea1b2b10d3f5ed7cceb1e750211de82 assets/createnuclear/models/item/colored/gray_anti_radiation_leggings.json -32e4183b43020d4adafc0492e3380f582bc1bc96 assets/createnuclear/models/item/colored/green_anti_radiation_boots.json -2ee9cb67f264276d1e43ae867261194d48cf3e2f assets/createnuclear/models/item/colored/green_anti_radiation_chestplate.json -777b11e9079ed656d81d46618abcf0e3180fa211 assets/createnuclear/models/item/colored/green_anti_radiation_helmet.json -4a764228deb8dd3fa9919b96de866a67147dab47 assets/createnuclear/models/item/colored/green_anti_radiation_leggings.json -0b284171834018501d8a8fa033c2f23253410435 assets/createnuclear/models/item/colored/light_blue_anti_radiation_boots.json -aa8b456049ff706bb4f24ad6e9c159f5be97595e assets/createnuclear/models/item/colored/light_blue_anti_radiation_chestplate.json -f920b0e1e5ccd09cf718aed7c4ce877d8b71535c assets/createnuclear/models/item/colored/light_blue_anti_radiation_helmet.json -28a24d909791afb368fef3c9ea62bd8f411294c0 assets/createnuclear/models/item/colored/light_blue_anti_radiation_leggings.json -3f95305d86580f5bcd4565bf212529c0a31df89f assets/createnuclear/models/item/colored/light_gray_anti_radiation_boots.json -fc40ae0592b29adc56b474a1dcfdda3b308338b6 assets/createnuclear/models/item/colored/light_gray_anti_radiation_chestplate.json -ff2b2cd99e3a5f1d73d5a5b85188e166860e840b assets/createnuclear/models/item/colored/light_gray_anti_radiation_helmet.json -504461e53fd0666769900bb4a9203f549516c32a assets/createnuclear/models/item/colored/light_gray_anti_radiation_leggings.json -56db9dc9744caa6cc0d7f447ee779eea7611bcec assets/createnuclear/models/item/colored/lime_anti_radiation_boots.json -c12d3c89f7964fc9891ae1757457f52f5fd42fb4 assets/createnuclear/models/item/colored/lime_anti_radiation_chestplate.json -0e3076492440bd60e320b960e783b87f941b4bca assets/createnuclear/models/item/colored/lime_anti_radiation_helmet.json -0319754a78d26eb0a102410b172847f59b4e3abd assets/createnuclear/models/item/colored/lime_anti_radiation_leggings.json -a67c6bcc52241530e0a6a1b6462815125730f47c assets/createnuclear/models/item/colored/magenta_anti_radiation_boots.json -d1a3620810d13a8d2887b740aa31147d667a76fe assets/createnuclear/models/item/colored/magenta_anti_radiation_chestplate.json -bd51ce1850aeb47e442d9a225f8e1b9c64703668 assets/createnuclear/models/item/colored/magenta_anti_radiation_helmet.json -2237ced4a4e9ce11096fca7832475859f6a63d12 assets/createnuclear/models/item/colored/magenta_anti_radiation_leggings.json -0e8458fba6ef3f70d485e9ef94ad3348b9c9ccc3 assets/createnuclear/models/item/colored/orange_anti_radiation_boots.json -5596d1c4c495809c2642c5e59e697661411f29a6 assets/createnuclear/models/item/colored/orange_anti_radiation_chestplate.json -3f7f545fe4aecd253b1e34c146ee7eb45dc5a4b6 assets/createnuclear/models/item/colored/orange_anti_radiation_helmet.json -854edc540ee421a3da166ebedb95706349e3612b assets/createnuclear/models/item/colored/orange_anti_radiation_leggings.json -db195113d80a009ccdd6db125020dbfc010e81b3 assets/createnuclear/models/item/colored/pink_anti_radiation_boots.json -c435c2b95d5e27fff9fd300218710ce8b4444df5 assets/createnuclear/models/item/colored/pink_anti_radiation_chestplate.json -823b1614c94b8e385449c05225bc8d3dfa214168 assets/createnuclear/models/item/colored/pink_anti_radiation_helmet.json -3ee985f85be75905a3ec5c31750a6093e29332c2 assets/createnuclear/models/item/colored/pink_anti_radiation_leggings.json -c8ae14ec7e445f9f2158ff0ce05addcfe412f8f1 assets/createnuclear/models/item/colored/purple_anti_radiation_boots.json -f62d520b0e16a5800aee9937e50f543d7ae9505f assets/createnuclear/models/item/colored/purple_anti_radiation_chestplate.json -8a4fa7289406f02f82bf52871bdabd7918600ce8 assets/createnuclear/models/item/colored/purple_anti_radiation_helmet.json -a550ea9c2b1f3aaa4b942552993f84f2ac856bff assets/createnuclear/models/item/colored/purple_anti_radiation_leggings.json -804f3448f3b880ce8e43fbb3fcb963c8ace1841c assets/createnuclear/models/item/colored/red_anti_radiation_boots.json -c35ac2019c04d1da881af7e0c48ee5074fa85bfb assets/createnuclear/models/item/colored/red_anti_radiation_chestplate.json -caa15a3ca087a40b33eb78e2156c9697b08f5c5f assets/createnuclear/models/item/colored/red_anti_radiation_helmet.json -b28e064c434b9859f1465c698f97fecd738707d6 assets/createnuclear/models/item/colored/red_anti_radiation_leggings.json -bd8afdb187eaaaf8611c80e43783a3d428d7477d assets/createnuclear/models/item/colored/white_anti_radiation_boots.json -64ddb5bd41f762fae95366dc33e9bb80aee440be assets/createnuclear/models/item/colored/white_anti_radiation_chestplate.json -59333dc66e3d12c84ea8a83dbce5e96048ef179f assets/createnuclear/models/item/colored/white_anti_radiation_helmet.json -7bb3c999d445c237d220267c390e4ef1d6cb605b assets/createnuclear/models/item/colored/white_anti_radiation_leggings.json -fbf21711d9d9196b95f53d10a3d0160e1423e3ef assets/createnuclear/models/item/colored/yellow_anti_radiation_boots.json -96f46592ee8bd686c14d53eabc03ac0223784fd5 assets/createnuclear/models/item/colored/yellow_anti_radiation_chestplate.json -ceefea70488adb5db8c8e2355eb9b59b8262b0fc assets/createnuclear/models/item/colored/yellow_anti_radiation_helmet.json -893789e72874b7b3bb5634df81b374c38177f2f7 assets/createnuclear/models/item/colored/yellow_anti_radiation_leggings.json -4c5ade8688c0dfd0c3007c6bde5d52fb0a0f44cc assets/createnuclear/models/item/cooled_nitrogen_concentrate.json 0c682ff48601bf7f42c8561819ecede780664fbf assets/createnuclear/models/item/cut_autunite.json 11220bd60ab51e05a978a8322511c224d15bf886 assets/createnuclear/models/item/cut_autunite_bricks.json d43ffb4c5491fcd8c98451649c3f4ceb271e8875 assets/createnuclear/models/item/cut_autunite_brick_slab.json @@ -203,61 +121,79 @@ dfea56e99288e64e5061c621e860fa314fc31e9d assets/createnuclear/models/item/cut_au 5027aa166900571aa2e4f50ad53869b595ff3426 assets/createnuclear/models/item/cut_autunite_slab.json bd832947d219746d3264422bc4c82f6acdc5cc3e assets/createnuclear/models/item/cut_autunite_stairs.json 4c0b115eb2a2f8d6e74c612fa6e1aa5b357e9185 assets/createnuclear/models/item/cut_autunite_wall.json +3aa34b484b1eb135c9e2fcd3db675aa8d7927951 assets/createnuclear/models/item/cyan_anti_radiation_chestplate.json +4925fd5469c909ae1e212cb0279f534656ee93a4 assets/createnuclear/models/item/cyan_anti_radiation_helmet.json +84b9d23fadc9fd0a2e45fc3609f6bf16ecb1545d assets/createnuclear/models/item/cyan_anti_radiation_leggings.json de649e8356e85e802df3e64df8fd663ce62ba16d assets/createnuclear/models/item/cyan_cloth.json 34c28d31d8b93699cc6ffab724d9c51670c0f3e2 assets/createnuclear/models/item/deepslate_lead_ore.json -e7121a329daab2859a4fbe971cea9ce1d3ab0b56 assets/createnuclear/models/item/deepslate_nitrate_ore.json -60b37c01bc3e885a25ce9b1aff4f8cb44e98f759 assets/createnuclear/models/item/deepslate_thorium_ore.json 1f160865067749c0bed163a84a61581631294141 assets/createnuclear/models/item/deepslate_uranium_ore.json -da342367b9997ac11b7165287f236ac483cc6671 assets/createnuclear/models/item/default_anti_radiation_boots.json -a1ee5609ce7559169b986d4eb17e6a5cd500d485 assets/createnuclear/models/item/default_anti_radiation_chestplate.json -42c1d356ab28f9046073d582da2cf96457366a2d assets/createnuclear/models/item/default_anti_radiation_helmet.json -809f0c1d796358d37d0e4f1df699fd13b1b9e5ed assets/createnuclear/models/item/default_anti_radiation_leggings.json 5a2694d92c4708ca23ddfa67666ea26be66b9a45 assets/createnuclear/models/item/enriched_soul_soil.json 306f5731ab788fa3cf3d75a7edfcc68b9c20613a assets/createnuclear/models/item/enriched_yellowcake.json a3b71025626527be742999a0256e9c2290c9d42e assets/createnuclear/models/item/enriching_campfire.json 78240d0c081d144592e76af622d0c9929569db17 assets/createnuclear/models/item/graphene.json 3c0e762c21fa4fa5724f5570c190e89d247ee71b assets/createnuclear/models/item/graphite_rod.json +eae1421ac37a98d0fc795bab8f349906aed521dd assets/createnuclear/models/item/gray_anti_radiation_chestplate.json +c88d66c0a041c51ee8089e5596169dc6c353fb13 assets/createnuclear/models/item/gray_anti_radiation_helmet.json +e66dc779ab853aecc35e6ccfba5d9dba78cd0574 assets/createnuclear/models/item/gray_anti_radiation_leggings.json 75bd474d73be3c041ceb82627cc438b2775e9b1b assets/createnuclear/models/item/gray_cloth.json +b4ddee28d16f837d70e311c84748b18fe3cdc21a assets/createnuclear/models/item/green_anti_radiation_chestplate.json +d0f9a216114a583e097ef8369c4ed74f50270672 assets/createnuclear/models/item/green_anti_radiation_helmet.json +00308a5c640b2ec21ad96b313789a2ec28cff516 assets/createnuclear/models/item/green_anti_radiation_leggings.json 104ab85c7f23d9239608603e6cb2227bc60b585f assets/createnuclear/models/item/green_cloth.json ad33dca8ecf90a8bc1ebb61c2007af72c427e9ed assets/createnuclear/models/item/layered_autunite.json 17ec52f71bd19239771c599ee80d9ffa073738af assets/createnuclear/models/item/lead_block.json 649fce08e620f39f776ab8ae8dcb17e0fd77c82f assets/createnuclear/models/item/lead_ingot.json 4d18b6f86e9ebcff28c08b9876f1819a067cd290 assets/createnuclear/models/item/lead_nugget.json 3fc1094857b79873a966d6de2dc9ec3b711caadf assets/createnuclear/models/item/lead_ore.json +af0ce4256f68076af5c6a6da9faa98919eeb0a1c assets/createnuclear/models/item/light_blue_anti_radiation_chestplate.json +71bbf3a4c34d499581bc7d0bb8fee63d2441c903 assets/createnuclear/models/item/light_blue_anti_radiation_helmet.json +e3acc02d9c87edea70fb57e88e172209b2b17a3f assets/createnuclear/models/item/light_blue_anti_radiation_leggings.json f3b5417e33bf6c166d8cffbf16ab0f9893e29c6d assets/createnuclear/models/item/light_blue_cloth.json +4904ab86720357735b330a1a70d303d2218c31f6 assets/createnuclear/models/item/light_gray_anti_radiation_chestplate.json +8ed063e9486b9d6d830bba43a35a3b5dd07ea0a0 assets/createnuclear/models/item/light_gray_anti_radiation_helmet.json +114178d84e51715bc7e81cec53fca931499f72e4 assets/createnuclear/models/item/light_gray_anti_radiation_leggings.json 33bd84e37cc034cdd6d6516af77f944b7399f3fa assets/createnuclear/models/item/light_gray_cloth.json +c982468ef610a204620f31cf7bc9b19b4163489c assets/createnuclear/models/item/lime_anti_radiation_chestplate.json +50c312969d1f3f0c5fad27639ba3f95d0853cb14 assets/createnuclear/models/item/lime_anti_radiation_helmet.json +cb27df2e5ed459128cc7d83786c9f32d91242e56 assets/createnuclear/models/item/lime_anti_radiation_leggings.json b20e1b4dd0745ead1aa2248a91df5dde465e0938 assets/createnuclear/models/item/lime_cloth.json +5ad910a7a4ee066d98d1727988557725038f957e assets/createnuclear/models/item/magenta_anti_radiation_chestplate.json +e02c005625f9ab199ba04201152973e016b16831 assets/createnuclear/models/item/magenta_anti_radiation_helmet.json +5e91eecf2e5def0f863b5d7d9b3625a62e4de7af assets/createnuclear/models/item/magenta_anti_radiation_leggings.json 4799138766c26496b41807407a4b1ce2106cf7b7 assets/createnuclear/models/item/magenta_cloth.json -94fbc4170e0aebba53f00f5828089a25bf683c4c assets/createnuclear/models/item/nitrate.json -1e42471def4f88f8bb4b40755c72f5f713a19f30 assets/createnuclear/models/item/nitrate_ore.json -55e956c815f423e5a94d1f113ba7301199f272f5 assets/createnuclear/models/item/nitrogen_bucket.json -126657f82888c7b7b9e2338dfec05a7f80b1080d assets/createnuclear/models/item/nitrogen_concentrate.json +626c65938b0109839ff3f48fecabe659fe38a657 assets/createnuclear/models/item/orange_anti_radiation_chestplate.json +72af25b71ba1417c58137fce1070c09cc65a61b5 assets/createnuclear/models/item/orange_anti_radiation_helmet.json +af14c1a038ff14285b1d78dfbcab0a8e44df14e5 assets/createnuclear/models/item/orange_anti_radiation_leggings.json cfc8b9126dc3fe3b993c5e6201533aecc07989c3 assets/createnuclear/models/item/orange_cloth.json +45223d8e65c235302e923cda583fff09cb4ab156 assets/createnuclear/models/item/pink_anti_radiation_chestplate.json +0703dcb90ab1cbe58167c0872bd9e9950de99531 assets/createnuclear/models/item/pink_anti_radiation_helmet.json +af0dd245292fd2952c37e2d81bfff0a34f8aa5f6 assets/createnuclear/models/item/pink_anti_radiation_leggings.json 9f81dccbba864441a1d76a5312216faa44e6e44b assets/createnuclear/models/item/pink_cloth.json 6d3410aa77b41ada9809f246f1d1a1a982449736 assets/createnuclear/models/item/polished_cut_autunite.json 6919e7571fa3bd76fa08b0a707f1f9367e203a49 assets/createnuclear/models/item/polished_cut_autunite_slab.json d3459552745c002eb95585853ddec7b638b4c11f assets/createnuclear/models/item/polished_cut_autunite_stairs.json b6c3a22d368bd0796b004ac27b8e453a16e7d14c assets/createnuclear/models/item/polished_cut_autunite_wall.json +86d99549567048667239096badcb4249d6dddf2b assets/createnuclear/models/item/purple_anti_radiation_chestplate.json +9e3c06e53c3bb29bd4fca943a6700e97e81a6705 assets/createnuclear/models/item/purple_anti_radiation_helmet.json +047c75651f6c6d8888fcfb1416e67dcb91f3dd99 assets/createnuclear/models/item/purple_anti_radiation_leggings.json 3171211192a2b92005177fd1ee2ce7fbe2592b52 assets/createnuclear/models/item/purple_cloth.json 7da7ddaac39353657166badddc16fe9eb79f1a27 assets/createnuclear/models/item/raw_lead.json ba58a4c086d8937d6703795a9d80435c2d450e35 assets/createnuclear/models/item/raw_lead_block.json -58c3279f0d6dfe7b88f5a85bfce6c1d683bbe2b4 assets/createnuclear/models/item/raw_thorium.json -528149130134a5b1d90552f22e1c856a2644a9dd assets/createnuclear/models/item/raw_thorium_block.json 2e30d8c1f56b02bd000509c2a6b32f4ff6c33290 assets/createnuclear/models/item/raw_uranium.json 5bad8990f31085232b63b11d295b90b581af9a82 assets/createnuclear/models/item/raw_uranium_block.json -11d78b3caf55cd1bcdeed1ad53fcfdcb7133d2f6 assets/createnuclear/models/item/reactor_alarm.json ef76b3a3a97b5d1901d7e8ac17009381de418ab8 assets/createnuclear/models/item/reactor_blueprint_item.json ee9b06de6d4e5f722543a83e5d9f7564ac6d7f70 assets/createnuclear/models/item/reactor_casing.json 7d0b9c3d7301e1f419441b69f152955fc69c5633 assets/createnuclear/models/item/reactor_controller.json 118e595a42c557d4eb97750ba31699a0e3f29ed8 assets/createnuclear/models/item/reactor_cooler.json 7e444d9dc776530d017fc28fe18dad0fabeedcdc assets/createnuclear/models/item/reactor_core.json -3e46c3ff9c6fc0b276549f7f63be2b4690cd3d62 assets/createnuclear/models/item/reactor_fluid_input.json 6726831326d47e5e416216e0ec1d3fd214110e89 assets/createnuclear/models/item/reactor_frame.json +18dc2031fd8aeba588d92e43093fb76e78b2bbe4 assets/createnuclear/models/item/reactor_input.json 69e464d730b826a0c28ed3cfeab28c4c561ec1b0 assets/createnuclear/models/item/reactor_output.json -08b156175821e1ce7820783f2f1ba92924e54a7d assets/createnuclear/models/item/reactor_rod_input.json +a108ac857c776255abc1631429c5ffabb3e2a8de assets/createnuclear/models/item/red_anti_radiation_chestplate.json +b7a56e4ac63519df8fcefb9b18a2583991bd9f34 assets/createnuclear/models/item/red_anti_radiation_helmet.json +54aa0a32f1eeedc5b78eb223ea01c3ff30ae365d assets/createnuclear/models/item/red_anti_radiation_leggings.json 4db93da70d6a7549155201b7d9d68355449652ac assets/createnuclear/models/item/red_cloth.json 78a9e80073512a111cb936a516d290a824846ff2 assets/createnuclear/models/item/reinforced_glass.json -736521abdac62d6fa4292aafb8c86bb3d7c9623f assets/createnuclear/models/item/reinforced_glass_bottle.json 60dc6eb917ee1567461f02aca765e061d3d9f55a assets/createnuclear/models/item/small_autunite_brick.json 9b83b53d90891eaf7aa4693eafe2876a831e0be2 assets/createnuclear/models/item/small_autunite_brick_slab.json 3e80ef1d80473c73a723d3c4b5c1409c7998d70f assets/createnuclear/models/item/small_autunite_brick_stairs.json @@ -265,22 +201,20 @@ ee9b06de6d4e5f722543a83e5d9f7564ac6d7f70 assets/createnuclear/models/item/reacto 7f33b090f2821bdeb07b2938b1618ad3f309248f assets/createnuclear/models/item/steel_block.json bcb30dce2419ce1ec2e043eaff83df82ac8a4bec assets/createnuclear/models/item/steel_ingot.json 4b0492cf73c071f13538ce485419e46a164c99c7 assets/createnuclear/models/item/steel_nugget.json -d4ec5a600b482636195c7ba0c915ed5d78e8c880 assets/createnuclear/models/item/thorium_block.json -9712377d41a7153cb07638e33dd02e880609d249 assets/createnuclear/models/item/thorium_bucket.json -b636be722a513137e6ca68bdc6510c4a56a2296d assets/createnuclear/models/item/thorium_dust.json -6c63ff92f764da7ce92a99149bf2bf43c23e3727 assets/createnuclear/models/item/thorium_ingot.json -fe44d1ed2b4100ec32dda43274a085166706485d assets/createnuclear/models/item/thorium_nugget.json -954086bd19e91b833a263d3da33bb59903ce153f assets/createnuclear/models/item/thorium_ore.json -420836e3d9085a4ace8a147c25c7bd5fb28b58a1 assets/createnuclear/models/item/thorium_rod.json 2b6958059c3a4c8aee7fb4c003feba12dd0ab252 assets/createnuclear/models/item/uranium_bucket.json 7b15a9300d0f6d106e589db3dcd3294781d0bdca assets/createnuclear/models/item/uranium_ore.json 3b03793c0f5786f258c593e0b140cd6bd10c3b7b assets/createnuclear/models/item/uranium_powder.json ea04609e8b5c12a7805b1c564bca07fefd6d38ba assets/createnuclear/models/item/uranium_rod.json +798287f6d78ee3d736022963d35a700f42cbdca9 assets/createnuclear/models/item/white_anti_radiation_chestplate.json +7960569836d3b7f0c50ff9a000253098f776a8f0 assets/createnuclear/models/item/white_anti_radiation_helmet.json +31283971103bb25159e8b049b63dfbc408e87d23 assets/createnuclear/models/item/white_anti_radiation_leggings.json 4d85657105612ca5525a14791c3e07cf6bd239b8 assets/createnuclear/models/item/white_cloth.json 63ec6c618a3a23eab4cab9c52d7d3250de9b516e assets/createnuclear/models/item/wolf_irradiated_spawn_egg.json 8bdc2fabbfc9fcc7c2ad4a3273897659d90b95ab assets/createnuclear/models/item/yellowcake.json +609c04d42448ccc99291c723c8b6741e870b46d4 assets/createnuclear/models/item/yellow_anti_radiation_chestplate.json +953491d658ba39add0f080137ebfafc9ac07ee1d assets/createnuclear/models/item/yellow_anti_radiation_helmet.json +b20aeafcdcd235c7d89067d5331b823535b82522 assets/createnuclear/models/item/yellow_anti_radiation_leggings.json a1970879fd57836f5ae5d23352cdca277095bc7d assets/createnuclear/models/item/yellow_cloth.json -dabba9d38be6825bc8c7684f10de5e23f5d2870f data/createnuclear/advancements/recipes/brewing/crafting/reinforced_glass_bottle.json 72b0cec0c98e9ead9562ff0cc1231a5028e2a22f data/createnuclear/advancements/recipes/building_blocks/autunite_from_stone_types_autunite_stonecutting.json e7967751f132676cb1d523743adaac3aea1f0814 data/createnuclear/advancements/recipes/building_blocks/autunite_pillar_from_stone_types_autunite_stonecutting.json 8e9cfc8ab1ddd7b818cb52cbd0fb60c0c4713bad data/createnuclear/advancements/recipes/building_blocks/crafting/enriched_soul_soil.json @@ -333,90 +267,66 @@ b8f6ee21b426748e16cff1d76f098d5a032c15f7 data/createnuclear/advancements/recipes 73819b2283f45f3fdf7509ef458f3288f6329ca8 data/createnuclear/advancements/recipes/building_blocks/small_autunite_brick_stairs_from_stone_types_autunite_stonecutting.json c1df1a2553a55dd47f37285912e5e3020c67da2a data/createnuclear/advancements/recipes/building_blocks/small_autunite_brick_wall.json 26b718d481625238a5ff718ee027dcddd29a2e98 data/createnuclear/advancements/recipes/building_blocks/small_autunite_brick_wall_from_stone_types_autunite_stonecutting.json -6a03d6b4e9119aa8b866489b9fc3034b7b075690 data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_boots.json -1b9533e643ba4e622744049351a73840be7d3d91 data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_chestplate.json -89923c201544800f1c3a545826f27a3945056215 data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_helmet.json -3986bf37b8b7fb8bed679a7bba4b208c202f4b8f data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_leggings.json -85bdf89b4f26e680ce725497bf4a40d8e8175618 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_black.json -05d25905b416fdeef6a5d01fdef38c54ed892d27 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_blue.json -30b3d1c1720668f7929270f6f0856fea2a261f98 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_brown.json -075faf78404c0a1f158f08b2e4393ef6eb38c64e data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_cyan.json -d2d4858f558926d2797d435b2223383f14a7796b data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_gray.json -3288f5fd9180b5ae2cc168b638aa1e504d94301c data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_green.json -5641cdd59b9c6b3ac009162e031ab0a7fd8b6675 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_blue.json -de55063eac462f0da6b7a6b139737219a17c7abb data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_gray.json -7073c2024318b15133a1a3dd196476f006f9fb44 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_lime.json -42d2016db6fdf3b869089a8cdb1cd8245416f3a8 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_magenta.json -4824c97086a4cc8e2fee6dfa9d91ea146f634894 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_orange.json -f8b0de005226101168cf52d015186014151fec91 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_pink.json -2b673c43efd329e562429121ab90e5116de49440 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_purple.json -6fbe22371092ec071100d3ea2895d34d68e9987a data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_red.json -7bb893015b7a523495a3cfa4cbac411d4702a121 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_white.json -5b831354f6882ffc01cf5d4de99c80ae39eb6985 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_yellow.json -f550721e88b796216fd7945c5a1e5ebe1a8e9ebf data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_black.json -991c8077332847f5cec0d30dfcf849356fadd384 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_blue.json -e1c256431f9cac59595de6ac64eed75c24e5e669 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_brown.json -9b094bb692299f38493d1f461f16ebc405dcf5df data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_cyan.json -1c2f8904e3b5cfbb58036dbe0a9e21c7fe000cc2 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_gray.json -a1db9d61813e073d23e899b0b70a9babf01ac73f data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_green.json -062e952b638235313ee3f83fbecafaffb99e68c9 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_blue.json -f20f6004fa8610b844bc18c2a2f965221d844d72 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_gray.json -1c4c9b54dd2d5fc9dfbe98fac98f8029eb9f2122 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_lime.json -42470e8057b0c52c0fe560fee0a187cefdf9ad2a data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_magenta.json -1092af45e194c8dbb5eccbacf3e75596568b1c3e data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_orange.json -f069a2608b2e0f9abaa4f9d40086688b2a6c1d2c data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_pink.json -be2c6daadca8e5cf0ad31e87ff3eadb2a46d3783 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_purple.json -b751b05a36dafbf2ecdfda256540f61b7dc9ae54 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_red.json -afeb17b15cf197717fee9a3441a97a7e6a8e67ef data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_white.json -1c11e058e64a98723719d4d84855223ac16a6dcf data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_yellow.json -ac0b324373f50348a605d990025587c0ce67b743 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_black.json -a86cea3c07e433e60dae933feaa47d52ac266bc2 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_blue.json -eaae2a639de0c131da4b3bf5f463c4856446464f data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_brown.json -a5d0e86d0062750bbf7c6ba2a5f567a510722717 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_cyan.json -32c1c9c0357504e2d1cf0ff00d56fcf9c3b0d4ed data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_gray.json -2b052785e459634471ec996f2235b5a8aef9678d data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_green.json -67447839d7f63397876c2931cc5927e6b1943500 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_blue.json -e9a2775434aa15c03b20f54a6e594739d8efcf41 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_gray.json -0d6fe76e7c6c2e6836d0b9eb58a2aac1bde34e41 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_lime.json -0fce9d96d0349e870563fd9e083b5d29691702f8 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_magenta.json -a4e502ad607a0b7d87a877aa94caa9ea61c3c426 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_orange.json -b192c67968b4bd48b53768bc4e5143cd4fd03dd6 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_pink.json -90940d59965a9be36b332a77267da47ee5c7e2a4 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_purple.json -93538ce24ab2e560200c0221f21b27e9933e2197 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_red.json -93b6c69d6ac5d63d002257acca531f42a92f6b77 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_white.json -a4ace0514e1eec98d82c69ee978dc7dd3e4f2010 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_yellow.json -359867df30709d1c30e12fee724f0da327eb165c data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_black.json -18ce97fe67745ad9cc9b82ea277066a3e5b538ef data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_blue.json -0da5037d78deeaded4cd7641433da7a7c6e1a5ee data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_brown.json -c31aa299dbd2c917e4cbdf0201e2360eb14ac8e4 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_cyan.json -be5bfabee101369283012ab286e9a325bfeac826 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_gray.json -3bbd719c37aeaec56c2e05c756bf3e5aff9a0935 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_green.json -aca51ee59b2742be3b5f76796f88e87dfd662569 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_blue.json -b5681eeea9b91ac4966c015e857c6524778073b2 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_gray.json -18dbeafcde9cfca46fae1801503473b3c72e2c38 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_lime.json -2cff4f5903db38589b94c589ded794a817943611 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_magenta.json -6a21a2ed6e38f01244fbd35ec250c380a2fc40cd data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_orange.json -209a37ba8e6bbfc61ede95a908d7f5fd7aad26ef data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_pink.json -24a4fd0309359021fb67636038ce121f3e00fe1c data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_purple.json -48a844e0dd62eb684247d238592518b687137d9d data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_red.json -dfd6b4a2aadbd3c301bb02e980f7790caa4a3746 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_white.json -9511519d4e79d31e671081ba25e7074e908195e1 data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_yellow.json -7a12ea1e92fe1eb20998c28399f041e3684d66aa data/createnuclear/advancements/recipes/decorations/crafting/raw/raw_thorium_block.json +979c398bbb9b73d8924ee9a1248fead541cbfd0e data/createnuclear/advancements/recipes/combat/crafting/items/armors/anti_radiation_boots.json +b4e68786ee0454d0310f5513a9047f53287b527c data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_chestplate.json +b2846412cad33434c85eed1b85d8a93dc5e16558 data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_helmet.json +2937c8fcae25aa80770e37991761be38f82119d8 data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_leggings.json +97b7ce5609fd7571778db785984cb5901cbf9723 data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_chestplate.json +f35cf42e5cb446d15b8e8203a591a51fd6e60f08 data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_helmet.json +aefc767f0155f9d00ab6204c5225876a3b763b99 data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_leggings.json +f8ac7de1b529688ed0b3954a24139cbe980cc84b data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_chestplate.json +4a3cecd35fd9dc73c786fe14d02460b16a7dadce data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_helmet.json +3bbce0af30d3ac94664aa68f18d1c9409970c8eb data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_leggings.json +493e7753ada91ba6886d0ce8ddfe7ad8f18f2c4c data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_chestplate.json +9e57ccc2e4ddb3881f45b9ef462b14cacb94d627 data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_helmet.json +eea54f4d24acc18dcc884df4d824db6e4dfb8a35 data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_leggings.json +9eb34323953599d42bef55204212cad010b017e8 data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_chestplate.json +96365989b361f8597953b95c88590b28933b4b2c data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_helmet.json +1dec5607eb281f3d91b94a6ee4441467dbbf11bf data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_leggings.json +03af591683635c5132ca4da0a79087b98616074b data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_chestplate.json +7dd4666d18364fa8f6056ef31e9f8bfc5ab3fea3 data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_helmet.json +35ad8bd492986a14d7d65247834d0519484f9ae0 data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_leggings.json +9e27f06026cde03c34993eb8b92a864536634fd7 data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_chestplate.json +912e93938b1a4d40dac38b1ee928a53d33357059 data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_helmet.json +0ae8592bd11f77e9df3240c1eb4c1424b06bcac8 data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_leggings.json +6ab73cdf0099e5c241daf50d3c715350f4158dd1 data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_chestplate.json +2a5f39827ddb6bcdfddf38543635dd8f734a867c data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_helmet.json +355f2cc4b2615bc721afedd320cb8d95f077d4c5 data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_leggings.json +3c662699144a166787165c54e59c69d222c1d399 data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_chestplate.json +366b1dbcd64ce41bf58d376386f7d370c900dd7f data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_helmet.json +e305c22a584440dfb7d031aadcc3c7f9aae9ed36 data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_leggings.json +de8086a8e456a350a89ef40764b320488953e18b data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_chestplate.json +a4d7b131d6bded1bdf42b43a0dcce5d509b75055 data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_helmet.json +97346563c1c5b4ad94c3458bea61d4ca8c58e79b data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_leggings.json +406b815c2bc63c406ca1881df08f3dee49aa6ff6 data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_chestplate.json +ca99e24a7f687d907700115423965e890a862f0a data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_helmet.json +c95b8f6ff00aa08c5f491d51c8ebfd82c9f07d5f data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_leggings.json +f80fd14bc2e410bc54c7a8aa2f91fabfb1cde57a data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_chestplate.json +1ab62422e830f2ccd3a1d22597dbf2237d7b5631 data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_helmet.json +00c4ff8f0e0e44f3593c3e30b96a1ac92419b6e5 data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_leggings.json +75181c4cdc5f9c64e3fe52a76eab64ab3b96d264 data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_chestplate.json +f1a36845c18af71d0b7ca2357c9bb47116e90fe2 data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_helmet.json +658420ef1bd9924a614e53089c43bd9632e4f213 data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_leggings.json +0088dca4b49ce5239ffb4fd63d50eee13652ad41 data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_chestplate.json +3cdfe8144924ab168d5f898e3c36aa89b42314d3 data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_helmet.json +682b9abb1212143c87cddd857555c7c14057ff74 data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_leggings.json +54dce406692683c630633c836916a657e2bfc6b6 data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_chestplate.json +33e5921a5eec633e93a2fefcb8ab7986d7d0014a data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_helmet.json +e423dda41c61e3885bd9189db7f485f4a580b64d data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_leggings.json +dd349fb2cfe2c8a92fd5091fdf55ae954ea77237 data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_chestplate.json +009c689264f2b974c72a2387223b2a7eb9f52aba data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_helmet.json +b8c6c649aec3cd595be961fe43d9ebc3a6013d8c data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_leggings.json 0d806e128a0eab473c822824e1914cd39d684efa data/createnuclear/advancements/recipes/decorations/crafting/raw_lead_block.json 570d06b2ab9f3b2d9d8265baac395e896e8b171e data/createnuclear/advancements/recipes/decorations/crafting/raw_uranium_block.json eafffaaada04af83623ebf8e940df2b507d933eb data/createnuclear/advancements/recipes/decorations/crafting/reactor/reinforced_glass.json -f9cc69b93befb0fda996ebe1c9d5e48c1753ed3b data/createnuclear/advancements/recipes/misc/crafting/biome_irradiation_extractor.json 0221cf60748260f92b94be675249afc98de1d707 data/createnuclear/advancements/recipes/misc/crafting/enriching_campfire.json cc3ec047cc113f80a1163aeb2277dad33af8e424 data/createnuclear/advancements/recipes/misc/crafting/lead_ingot_from_decompacting.json 58477747b204491c22a9aecb751d99054f71310b data/createnuclear/advancements/recipes/misc/crafting/lead_nugget_from_decompacting.json 2f3e459eff3d7404e49d23b9544b199caba741c9 data/createnuclear/advancements/recipes/misc/crafting/raw_lead_from_decompacting.json -ebab14dadd0650c76722c7e324ec4330539ee208 data/createnuclear/advancements/recipes/misc/crafting/raw_thorium_from_decompacting.json a9d692d44743f8fcabfc45046ad17a039c594747 data/createnuclear/advancements/recipes/misc/crafting/raw_uranium_from_decompacting.json 16c681121078827282f2ce2e16d335d2d7e5e1f2 data/createnuclear/advancements/recipes/misc/crafting/reactor_blueprint_item.json e28d26c880c31bb2ca64c9f380e001a13e3a01aa data/createnuclear/advancements/recipes/misc/crafting/steel_ingot_from_decompacting.json 76e79e1f9fb40d89a0364939158b1aaba8598ab6 data/createnuclear/advancements/recipes/misc/crafting/steel_nugget_from_decompacting.json -4d798680125ac67e3469e906b43f6d294cbf8fd6 data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_decompacting.json -fa9fc1d028bc6a7e9c59aab335fa666e05bdef65 data/createnuclear/advancements/recipes/misc/crafting/thorium_nugget_from_decompacting.json f38e19487233203d7135f35a7afe65d6b19a5aa7 data/createnuclear/advancements/recipes/misc/shapeless/reactor_blueprint_item_clear.json a021646becb7b6411eddd86644e5b17c8365582c data/createnuclear/loot_tables/blocks/autunite.json 62b7087350b0a9af9007b848c7f619a730e90693 data/createnuclear/loot_tables/blocks/autunite_pillar.json @@ -428,70 +338,100 @@ db666ffaca36edc9e246e225f225c1e87604dd88 data/createnuclear/loot_tables/blocks/c 10aff7424eefd85e50269c66e60ae343043193cd data/createnuclear/loot_tables/blocks/cut_autunite_slab.json e6e624e978fdacfa3cdd123d23d021f504308149 data/createnuclear/loot_tables/blocks/cut_autunite_stairs.json f28efa9fb383b86c770b8c7344fc30f6ab9200d3 data/createnuclear/loot_tables/blocks/cut_autunite_wall.json -463869981259ac3b7087139c283e38178b629b6a data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json -ab2a2b6038a5f6d841ec21a28db2e5e693d7ee82 data/createnuclear/loot_tables/blocks/deepslate_nitrate_ore.json -06f3370110396372b9bef4d6c0805affbe70cec4 data/createnuclear/loot_tables/blocks/deepslate_thorium_ore.json -063436e2539f1d04b6a96427801ea0fa70c03be5 data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json +113d87359e902ec9112e063f87adf5646cd01dbc data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json +ac0d262ec298e481314387399c378ecd454e20cc data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json 76ca23065681dfd7f18dbbc5a65b8ab8bc40c20c data/createnuclear/loot_tables/blocks/enriched_soul_soil.json 62f405d930be8b534e863c8aac205687b943f3ef data/createnuclear/loot_tables/blocks/enriching_campfire.json aa8efeb48b11261953f7d90e6d7db38411550694 data/createnuclear/loot_tables/blocks/enriching_fire.json 297b7824fc2eea67ef47760da549f73e93424b60 data/createnuclear/loot_tables/blocks/layered_autunite.json efe2ad634ad8b801a8fa69f45516b30157b46771 data/createnuclear/loot_tables/blocks/lead_block.json -3fedfbd217847c7102f049501a00929cb03d25de data/createnuclear/loot_tables/blocks/lead_ore.json -1e942f7a1aaf752424e39a61d094b4736834ec30 data/createnuclear/loot_tables/blocks/nitrate_ore.json +9db8f06cd9b1d7a9c2d94e652f00a7588398571c data/createnuclear/loot_tables/blocks/lead_ore.json 7ad41810138d7b55a5d9d0db0956cd255e879632 data/createnuclear/loot_tables/blocks/polished_cut_autunite.json d5fb5ebfe991980abfd6f1932575363d026d8859 data/createnuclear/loot_tables/blocks/polished_cut_autunite_slab.json 8205832fc48bd24351b4b433f92a70a533336f48 data/createnuclear/loot_tables/blocks/polished_cut_autunite_stairs.json 2c3ca9fb7683d1edfdc2e4fcd4b25ab7f40c3ab6 data/createnuclear/loot_tables/blocks/polished_cut_autunite_wall.json 66ab1033aebea1383fe3f09c7468f4cd60d8aa25 data/createnuclear/loot_tables/blocks/raw_lead_block.json -7cc60fa9a9bb958907f56b583e27c7f37af2a63e data/createnuclear/loot_tables/blocks/raw_thorium_block.json 0998d5a55f2dc10e85e83dd74bd91d4a3913f61f data/createnuclear/loot_tables/blocks/raw_uranium_block.json -b0cfc64250ce727ba39807bc1560b36497f294be data/createnuclear/loot_tables/blocks/reactor_alarm.json af059cd55441441329347fbd569245b539b095db data/createnuclear/loot_tables/blocks/reactor_casing.json e76c0b96c978e266f39eca8e46cd5ba2388e1749 data/createnuclear/loot_tables/blocks/reactor_controller.json 95a90d9d9a553448c878dfdf4b153ceada923030 data/createnuclear/loot_tables/blocks/reactor_cooler.json daa4fad27f07fd72cb25a524464edea9efe771b7 data/createnuclear/loot_tables/blocks/reactor_core.json -1f0c66a193aaddb26626967d16cd8112e18b7383 data/createnuclear/loot_tables/blocks/reactor_fluid_input.json 576b0bf970ddbdd11ec06963e1d65e08e63d69e1 data/createnuclear/loot_tables/blocks/reactor_frame.json +be48e04b069441c8593aab5e9bf78f4edc2dd249 data/createnuclear/loot_tables/blocks/reactor_input.json 37af2b0b5eacf53995703344a45fb3f4d0efe1f9 data/createnuclear/loot_tables/blocks/reactor_output.json -4d10dc9daa7551a1c4879edbc22f63a8f1d84c73 data/createnuclear/loot_tables/blocks/reactor_rod_input.json 88c7cfbf28fdbe53241453e073722791c780de75 data/createnuclear/loot_tables/blocks/reinforced_glass.json feedbac4c2a466fb93f82756562edc63cb1b4b5b data/createnuclear/loot_tables/blocks/small_autunite_brick.json d51f9b307f2986ac086d32f48bd41e6dc4024348 data/createnuclear/loot_tables/blocks/small_autunite_brick_slab.json 4014ab450bb5de0522690577486f2fbbc334de9c data/createnuclear/loot_tables/blocks/small_autunite_brick_stairs.json 8718c7e7cce27e299611ee34792cdb59f3434e39 data/createnuclear/loot_tables/blocks/small_autunite_brick_wall.json 94dc8e72195da5aa505c6d5a3785ccfea30f7c05 data/createnuclear/loot_tables/blocks/steel_block.json -10453354af3c17390f7b6eb2eaa7109eae3988c3 data/createnuclear/loot_tables/blocks/thorium_block.json -c1c889e441f52d3c7fcf50dd2a4dab7311c9b262 data/createnuclear/loot_tables/blocks/thorium_ore.json -28feab8379c2951034bed4016eb91981d07dd24b data/createnuclear/loot_tables/blocks/uranium_ore.json +401811bf59cdb43ffb0c0bb5ba40eb954d7fa216 data/createnuclear/loot_tables/blocks/uranium_ore.json fba1a7bdb0835c034aa5ef52ebf589123d41b33e data/createnuclear/loot_tables/entities/irradiated_cat.json 2d8f5d7d7babd2b02ae836846e62daabf84de427 data/createnuclear/loot_tables/entities/irradiated_chicken.json -900719d49cec9385da31bb392649c65f4297288c data/createnuclear/loot_tables/entities/irradiated_cow.json f91f43a39c80f583f878ea1a0d944798c05f2388 data/createnuclear/loot_tables/entities/irradiated_wolf.json 4c985d77908c367245c3b4d56e1302a843522eff data/createnuclear/recipes/autunite_from_stone_types_autunite_stonecutting.json 9819e80259d08c1518b30ee9d4cf5c18689d3efc data/createnuclear/recipes/autunite_pillar_from_stone_types_autunite_stonecutting.json -163d7fc43633fd6ebdc124a487e55e427f47d147 data/createnuclear/recipes/crafting/biome_irradiation_extractor.json af0091392c2d5784455a57783bfa62d0d60d13ae data/createnuclear/recipes/crafting/enriched_soul_soil.json 3ce1aa65e8260fbe5fe84c9064b8de3745762605 data/createnuclear/recipes/crafting/enriching_campfire.json -3c2942b0a34c94bf074e19169a7f35834d5cb1cb data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_boots.json -c02e0f491c8db972860d217e88013858a090b39d data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_chestplate.json -6a3f2e0a58b380803fa33025e84919b039143aa9 data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_helmet.json -7fb19c3769092282a6bf6034260c55c3cc390501 data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_leggings.json +3e12f7186fee08c35956e4a7bd26770830e4d462 data/createnuclear/recipes/crafting/items/armors/anti_radiation_boots.json +ea505dc482e9c4f17087235e4d26fcae4079ebe0 data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_chestplate.json +9f437a5a52abf8f353c0b376aa6444773b7cbe77 data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_helmet.json +314a4ac10a0be2cdf83615774897988ff7371f30 data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_leggings.json +f44a7c66a9dfc9147fc9d55677b26076f4afd484 data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_chestplate.json +a3bb50e8dd41d9764cd9c9bf273785422275a8bc data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_helmet.json +3fe95bda860847685656cf3f277a8afea6ab6b85 data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_leggings.json +fc0aee948e98bdf4b0f78b97943a1aebaa8d1796 data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_chestplate.json +16394f944b94aea1cd19ba2677de56c00bebcdba data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_helmet.json +66bdaffe18edc322b6de69d2d6b1523c774087a2 data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_leggings.json +e6c352908b8f660db226132bbf957774c5cf12d7 data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_chestplate.json +9c7d16a6a8e021d914fbb5f3fa5389085833be3d data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_helmet.json +77b9d0bc061bf5a34d6398d00ce5e4c5c9e2ca1a data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_leggings.json +3b041d0515279352e7a167d53c1605997d27451c data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_chestplate.json +31e9cd688f7bf3cc238310dae87dcf55df62d577 data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_helmet.json +2ed6e23f248230a2ca4bb2aa05432116df9c7bb6 data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_leggings.json +05febbed635c8dbb250a38aabe815bfffa7c77c4 data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_chestplate.json +09145d0e4ddb0fd1c4d02710488c32527508cb74 data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_helmet.json +28ef8d35b4a30748d686cfd6f0ae1b56ee9e28f0 data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_leggings.json +b1a37c88635b1d855e340bf000f16d6affa70bc2 data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_chestplate.json +cff50e5fef80b39173ba94dce7fa9c484666117d data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_helmet.json +d69885154f870a949409ea4fe4d18b820d8aa228 data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_leggings.json +2eba7fd8a55d87de9b4fb4b8336df3420cd6dc18 data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_chestplate.json +178e220968870a1a3ba576ddbed0c378d8f4e394 data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_helmet.json +1e4f64eba61816f9fcc029c45252c43f083060f3 data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_leggings.json +bb094494b3c7f6f7bcdba620aa5812d8c3de691c data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_chestplate.json +3d91fcefa05ae913c2edd5574f44b2400f9864e5 data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_helmet.json +5aa5fb2b8b00842d62aba0fe6f041199335716ba data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_leggings.json +cfd49e391be051ec35444e10c4738309a1d2d1fc data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_chestplate.json +63e8a0d55cc4d6bcba6ed31ccd202f833f8c2fce data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_helmet.json +11aa98f3b7e9dbf17411f7f1eceaa5a375ee9be8 data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_leggings.json +8160905f2e316c934758180df7a866e73d7d5696 data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_chestplate.json +4f47f524a86375ddbb59ab1474577148c0a9e551 data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_helmet.json +b7df84fcd2fce86d73c3d37e8dfe5142ee898b32 data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_leggings.json +adf187f72a26a894ef9870d9b76c6aa9a2f61628 data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_chestplate.json +b3fde9445facafb387ea8ba7f0d478f20b4ad8eb data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_helmet.json +0c4bfdc67fedce323b7cd0463b2668ee5c8dfc09 data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_leggings.json +c4a6454d1f702ee3977a53a9e11a1eac7ae7640a data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_chestplate.json +d9578f67192594cf2481d45caf05de24969cb693 data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_helmet.json +4b80187e8db023b1bdc115b19f5b1d719e594fd5 data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_leggings.json +3fe339111ac211ff078cfe5376d1afeb3825e7fe data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_chestplate.json +7739a0c3452793819b049c5eaa1b91f9d2d9ddd1 data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_helmet.json +3ffba6c86818b5c6fab8eef8f2ab93214585221e data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_leggings.json +299f8fe18bd72af28f6dfd46000bed94fb0ce484 data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_chestplate.json +e6396835f0c68c87409e25edda2779227b84f5ec data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_helmet.json +8910f75d2b1ede94f5d09dcda192d25286b06ef2 data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_leggings.json +8816c1ad382a26cfabdae73d17c3376eb4ea8b8b data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_chestplate.json +96b0fde88bd9f53edd341658750311715ae52ceb data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_helmet.json +1d22695a4dd7ce4429529011c6cccee1969abb9e data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_leggings.json ad29e797fed10865a6c15d95c3de1278c0427df8 data/createnuclear/recipes/crafting/lead_ingot_from_decompacting.json 42fa720bf96a1d46e206db30cbd38e1b04ea7f63 data/createnuclear/recipes/crafting/lead_nugget_from_decompacting.json -befcdaaf4abf86e29d7f7008d489638c5f3cd6bd data/createnuclear/recipes/crafting/raw/raw_thorium_block.json 6d70c403bab3160fc13fbb3efee85d9f77f2e96c data/createnuclear/recipes/crafting/raw_lead_block.json 7bf77189b1a9bc533e5ac0bb72ec87e8d5221691 data/createnuclear/recipes/crafting/raw_lead_from_decompacting.json -06b7a11d4472cf36542c67d113acff6c3dccfd5f data/createnuclear/recipes/crafting/raw_thorium_from_decompacting.json 62e238496e81bbf9a86fcfc9396a6416e057007c data/createnuclear/recipes/crafting/raw_uranium_block.json 997f2bf339dd63253d9a98d16a9efeffac4eea81 data/createnuclear/recipes/crafting/raw_uranium_from_decompacting.json a7ff79f9d11a46e52fb25819a7c9e9604e8a317a data/createnuclear/recipes/crafting/reactor/reinforced_glass.json 77f77148406d34c065b55efa9d6e7a2b107831c5 data/createnuclear/recipes/crafting/reactor_blueprint_item.json -236a031ceec7fa78e963941df8eec874a2d589fe data/createnuclear/recipes/crafting/reinforced_glass_bottle.json ae6d07dc30751bfa39edbcdb8758a2faababa5da data/createnuclear/recipes/crafting/steel_ingot_from_decompacting.json 5fb04284d66de4bf54471a3db0d9a3bfa6b7a18c data/createnuclear/recipes/crafting/steel_nugget_from_decompacting.json -047c50559746a9ffb5835ff960ba500400e7e299 data/createnuclear/recipes/crafting/thorium_ingot_from_decompacting.json -428e74b7762c3b5b74e80850a5c75d27960c73c9 data/createnuclear/recipes/crafting/thorium_nugget_from_decompacting.json ebfe438f4284101e07538accdf15789d06140c94 data/createnuclear/recipes/cut_autunite_bricks_from_stone_types_autunite_stonecutting.json 4b86d48cdf03dcfaa383552881a7f52b7bebe9c5 data/createnuclear/recipes/cut_autunite_brick_slab.json b9d828959c4614caa4a0f3ac82f322dd538c6219 data/createnuclear/recipes/cut_autunite_brick_slab_from_stone_types_autunite_stonecutting.json @@ -517,22 +457,22 @@ af81c9ed277e6f3d0d9e48d413247debcc7b64be data/createnuclear/recipes/polished_cut 9cd62ff9cbce5c4a5293c7bfcb9c8c35d68ea91e data/createnuclear/recipes/polished_cut_autunite_stairs_from_stone_types_autunite_stonecutting.json e74d31ed68a39baca7d719338fdfeb71a9cea9a4 data/createnuclear/recipes/polished_cut_autunite_wall.json bd7dd55600eb9ddebb17ac6932cf77f0538bfe02 data/createnuclear/recipes/polished_cut_autunite_wall_from_stone_types_autunite_stonecutting.json -7d07afbab06c52adaf8463f256c238eb59e2969a data/createnuclear/recipes/shapeless/cloth/black_cloth.json -4f14ccebaae840b99856155c779da52cc820c0fd data/createnuclear/recipes/shapeless/cloth/blue_cloth.json -14d9c62de0aa59106b31785092acd2d1f4f5fa78 data/createnuclear/recipes/shapeless/cloth/brown_cloth.json -481f0fcad9e386443f4abb193572be6dea20c50a data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json -8cb32e458634f2217f7b8fc0cb785cbbddb3e98d data/createnuclear/recipes/shapeless/cloth/gray_cloth.json -b67355b2e6d9b792cc18ed12a95487277c27469c data/createnuclear/recipes/shapeless/cloth/green_cloth.json -66de7a4a6f768e68b6a81a1510c3b4f1ae62b2fe data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json -b04f0b6f3875abf2207f19951f6a078e7445bb83 data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json -9f43e08955d8c269ec514e4bb66d186f1b60f34f data/createnuclear/recipes/shapeless/cloth/lime_cloth.json -5a3bd7aeee574101cff4ab42aadfcc697ac05a16 data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json -b282815b9b858c78ba00870d4e795bc50d1c0380 data/createnuclear/recipes/shapeless/cloth/orange_cloth.json -7e40f80880139ffd26def352e1f0c17b2b05872c data/createnuclear/recipes/shapeless/cloth/pink_cloth.json -1cb11c3bbe8393116da50ac4e181ac1b68fbc7ee data/createnuclear/recipes/shapeless/cloth/purple_cloth.json -389c841c99a2ef68a4eba3dca414952d3c3d9099 data/createnuclear/recipes/shapeless/cloth/red_cloth.json -3a63377f0de2473803fe4b81b2fce121443faa42 data/createnuclear/recipes/shapeless/cloth/white_cloth.json -0e075da2b474cc1ffb430fb612feaca8c5426932 data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json +1713ce33da8ce2fd0145e9921cab615d31fa5e66 data/createnuclear/recipes/shapeless/cloth/black_cloth.json +0d0c71a2b494a34439cb2d7873b31083b07877b0 data/createnuclear/recipes/shapeless/cloth/blue_cloth.json +e6ec8d394df502aa1dcebd16d1ed0275f92e9d2a data/createnuclear/recipes/shapeless/cloth/brown_cloth.json +8d0f363323584bcdefe7803e9057f252b63fd12d data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json +fff014f30a041fad100ceefcf70ed9e8a00c318c data/createnuclear/recipes/shapeless/cloth/gray_cloth.json +cdd6de83eccb34f7bc4f38c6a92a32a74b7b3ff7 data/createnuclear/recipes/shapeless/cloth/green_cloth.json +fe147f38895f8b99412c53a6f7530a1e9575003c data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json +ab94d1c13af2e4bef0c92b8486108940180d3f9d data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json +2cd96d4f78b81393bff120448e9a14235cf2376b data/createnuclear/recipes/shapeless/cloth/lime_cloth.json +a22692736ff403a44bca8ef34b5f97a855eb0a7a data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json +bbc2714fa8586db7d42db2c1e4375accd7c264d2 data/createnuclear/recipes/shapeless/cloth/orange_cloth.json +d6be8ab92dd0caa9df946afb83868ce278c2c437 data/createnuclear/recipes/shapeless/cloth/pink_cloth.json +fa041c5a7e252bed6dc4636a45e5857d7e14dcb1 data/createnuclear/recipes/shapeless/cloth/purple_cloth.json +c863e58a1e11f9b8a925b08b321d45f76cb96de4 data/createnuclear/recipes/shapeless/cloth/red_cloth.json +2d315d82efde22d511e339baec628babdce5767f data/createnuclear/recipes/shapeless/cloth/white_cloth.json +fac232af7ba0edf6cf8e0f018cf53678457e652e data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json 8e194709b50fd2ca2ef2138b5d2528e092b45e4f data/createnuclear/recipes/shapeless/reactor_blueprint_item_clear.json bf49ba3e1332f0742e933d81ddd0dd9462f175db data/createnuclear/recipes/small_autunite_brick_from_stone_types_autunite_stonecutting.json 01e0af5e7139dc9d887ee026e4d319d5063415e5 data/createnuclear/recipes/small_autunite_brick_slab.json @@ -542,135 +482,66 @@ d6fbc19ffcbd5f5e3cdb0636813cf3a8c3262ec2 data/createnuclear/recipes/small_autuni bd84328028cb729d48f38ccc449f14be1d7acfb5 data/createnuclear/recipes/small_autunite_brick_stairs_from_stone_types_autunite_stonecutting.json 44f3dde18c582cc5dd95c705c7ad76691996b57c data/createnuclear/recipes/small_autunite_brick_wall.json 6bdbdc93b69c388425345d6d1aeb862eed894e5a data/createnuclear/recipes/small_autunite_brick_wall_from_stone_types_autunite_stonecutting.json -038fc3343f4c1df42af40a83539dfc5b4cd1809c data/createnuclear/recipes/smithing/default_anti_radiation_boots_black.json -8c545f7b81a2a959ec7311cc431acb9152100978 data/createnuclear/recipes/smithing/default_anti_radiation_boots_blue.json -022b1c9e64c6016d9fcf09505b2299a74b92f211 data/createnuclear/recipes/smithing/default_anti_radiation_boots_brown.json -367a0304d542804ae27db09f314c72aa2ac80bd0 data/createnuclear/recipes/smithing/default_anti_radiation_boots_cyan.json -58a6a497fe90086fc857b2739166fca14b3184b6 data/createnuclear/recipes/smithing/default_anti_radiation_boots_gray.json -1e59dcd5e24348b76c0d03a02ba08ce511e0c74e data/createnuclear/recipes/smithing/default_anti_radiation_boots_green.json -5fa9cc328406202b6dc8e918c0da1261f250c062 data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_blue.json -2bd8125af83708312c6e58a67945dbf608191963 data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_gray.json -3dea685cd4b310c14b331702f3e588c9829b5548 data/createnuclear/recipes/smithing/default_anti_radiation_boots_lime.json -2238b9ea259343214e28250707f09f5fea9501d6 data/createnuclear/recipes/smithing/default_anti_radiation_boots_magenta.json -834f64762f5dfc67f3df4a74b43ca2005967daef data/createnuclear/recipes/smithing/default_anti_radiation_boots_orange.json -983d805d5f3036f718e7a4e7885eee14769fa7b4 data/createnuclear/recipes/smithing/default_anti_radiation_boots_pink.json -4b5f83e830492a3280d78475217a949e63ebb72e data/createnuclear/recipes/smithing/default_anti_radiation_boots_purple.json -93d6c425f5f3f0d180a83b0349f5a6683dad5046 data/createnuclear/recipes/smithing/default_anti_radiation_boots_red.json -cd459e98f51f3a05c48970c4ef88fdfb3ce7ffc2 data/createnuclear/recipes/smithing/default_anti_radiation_boots_white.json -7c18b313411e4db4286b9b20845a3ab53889eda7 data/createnuclear/recipes/smithing/default_anti_radiation_boots_yellow.json -ea3eb2ca1258fe8336136f14be2cbab301ccbeec data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_black.json -e0db8911281e87614b5d7c36b7f7cc664db35e48 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_blue.json -f0b28a48d6f45857f915e56b0b30bdb97b6de681 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_brown.json -3220b0788cc0230b0c031e6983f4a15e11d07604 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_cyan.json -50a47115b8b84964824d2982f0582144d63e9c40 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_gray.json -53438a0dd3f84de14a064f8a66da83028da484b5 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_green.json -9c8e3ccecc11814102f255e40235d20bd42b3de3 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_blue.json -4f9a24f040fcb22add324826bd30660fd91efc43 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_gray.json -31f62ce94482c1b33a9407104e4b438cd0b4fe33 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_lime.json -d6ae9103fb1bce4684463a58a685232135cbf24a data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_magenta.json -465e82f5103bb96939ecdf048d9ae1416bcbdbf1 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_orange.json -0cec840222214c2d5335a174bce2bad2c3ca9b54 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_pink.json -7d852b6fa5872198205e30558593fe01faf59ec8 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_purple.json -6bcafe28789bb091f9f5d687ed2c6aad0f6c1db2 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_red.json -3a8ba11c021da81883149de9f7fd9020d1ebeff0 data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_white.json -80cb608e8e689701e8bce4a3986a87829c234d9a data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_yellow.json -7b346a25b801f93168be563a2aa365e4e48f827b data/createnuclear/recipes/smithing/default_anti_radiation_helmet_black.json -c69780adec8c2427c237cea5ddcd92a40e718d28 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_blue.json -25119854b65bc1bcfd7f069c1bbf49f94d522e23 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_brown.json -7e4780779055040d3484380914c09a0d025f9afa data/createnuclear/recipes/smithing/default_anti_radiation_helmet_cyan.json -92a249d8e1a28748e9d22626baf96326f6f6e221 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_gray.json -005d67d80eefe39b56f7b9393240068d18fafb01 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_green.json -88e16f23c073e994d4a6df46d90534d7f70df29c data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_blue.json -7b2fff312dc5b0bcc183e25faa14298b4633ff61 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_gray.json -1446a034a24c4e9f7070c9c1fbab0c88b0f308c3 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_lime.json -b29303743557b04966a1ee6cfb043f02df969d3e data/createnuclear/recipes/smithing/default_anti_radiation_helmet_magenta.json -e696a89e37fd63d7d287a2b3f8566d42da939b63 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_orange.json -a65d8515483a60d05c40a94d836c76112c7b8658 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_pink.json -a279b08aa7ac8f3e1b9e954d0d163faa3275c51b data/createnuclear/recipes/smithing/default_anti_radiation_helmet_purple.json -6e8392bb8d3e96e6cc440d03dab331f3963dad18 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_red.json -37551f2d20b034f07b11f7858ec110474f757694 data/createnuclear/recipes/smithing/default_anti_radiation_helmet_white.json -bfce9d7de2a052f3fa792b9c1f187e72092e007b data/createnuclear/recipes/smithing/default_anti_radiation_helmet_yellow.json -4164b283ba6bd2c9a97dcbae969cdfc27b2e9d22 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_black.json -72bb2356d213f4bca7ec238271b8ccad39f61576 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_blue.json -5d6997ae238d853a7c358a54af7fd2f70c1c431c data/createnuclear/recipes/smithing/default_anti_radiation_leggings_brown.json -959823e193ed0f7cc17137116a3a81b4e0c0249d data/createnuclear/recipes/smithing/default_anti_radiation_leggings_cyan.json -23298fa9b239964faa6a952dbe0ec6c4a56f7a1f data/createnuclear/recipes/smithing/default_anti_radiation_leggings_gray.json -e354f42965d41abae16e6f31c23981d23326359d data/createnuclear/recipes/smithing/default_anti_radiation_leggings_green.json -4a26d58d0946323336db531059b59ab6639b8ae8 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_blue.json -5071edb01d1cb7ab3b1514bbe2ecd5452c14f395 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_gray.json -2aee5d790b14c5b2dcf9417cd8577313000509c9 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_lime.json -0c3cd83adf7c0efa1511e2b9c557ff0eb6dad648 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_magenta.json -88f2da1df98b6547f8c6c53c071cfb5d3eeb04f6 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_orange.json -baef31d622842d32d7c820304de49c913b9a820c data/createnuclear/recipes/smithing/default_anti_radiation_leggings_pink.json -887a317461008f2fc5d8719e123ac6a057a353a3 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_purple.json -203dcb45f480bb9a9fbfc4c0b41a99fc104e394b data/createnuclear/recipes/smithing/default_anti_radiation_leggings_red.json -ded8acf28ec98ddbd5257b9e7a7a4d8f3686d6df data/createnuclear/recipes/smithing/default_anti_radiation_leggings_white.json -18118142ae5ada0eee60321cfa8a64fba4d8c8a2 data/createnuclear/recipes/smithing/default_anti_radiation_leggings_yellow.json a7d4278d8a39649c8b658ad2f3f1d092cb012bdf data/createnuclear/tags/blocks/enriching_fire_base_blocks.json 509b5baa813ae0dc3345fd97754e4088132359ec data/createnuclear/tags/blocks/fan_processing_catalysts/enriched.json -bc8701774f57ab000a8f0f1d390702175a6cdbb8 data/createnuclear/tags/blocks/fan_processing_catalysts/snow_powder.json -ccbc67cba973a8e1e43d0166ddfa5645f6a82aea data/createnuclear/tags/entity_types/irradiated_immune.json -410aa6d101788f25baa176741887c6f314006f29 data/createnuclear/tags/fluids/nitrogen.json -dd07a117bf2a657aba3d776ee718829150a1c0af data/createnuclear/tags/fluids/thorium.json +925cb97bc13b3122fe17e59ff3ec2fe4d1eaacd5 data/createnuclear/tags/blocks/lead_ores.json +bad88bea18fec41c7ad6fa4d396feacc0346a137 data/createnuclear/tags/blocks/uranium_ores.json +e8b97836e0a934f9023ba18e6ad44e60dca4532d data/createnuclear/tags/entity_types/irradiated_immune.json bfd5a561b60a7d59d7f7c248ec75e3571a0f2fed data/createnuclear/tags/fluids/uranium.json -35133e95f1c8fdd7a1c21afcc231fc0bffefb9a8 data/createnuclear/tags/items/all_anti_radiation_armors.json -bce34f53cb2d00f7dee84683e8fdd429dabbcc1d data/createnuclear/tags/items/anti_radiation_armor.json +7422c4cd9d6dd716f91311faa1fb7e26aa9ac345 data/createnuclear/tags/items/all_anti_radiation_armors.json +e3fe4325aafb669d287c17b5b30953e4fb709110 data/createnuclear/tags/items/anti_radiation_armor.json +fadb3957b979d82146790ef3550e38606760421e data/createnuclear/tags/items/anti_radiation_boots_dye.json +e7d6ce5456dd6ed6f018a8fb2f3a14b5b4f78e52 data/createnuclear/tags/items/anti_radiation_chestplate_dye.json +0845acff015f78c494df2cd6754c5cff10d77c05 data/createnuclear/tags/items/anti_radiation_chestplate_full_dye.json +3f127db66e68fd3aac662a14e4cbacc4204efa8e data/createnuclear/tags/items/anti_radiation_helmet_dye.json +b5d23f0bc26a4e3a72cde40f3c6d59c03c818b4d data/createnuclear/tags/items/anti_radiation_helmet_full_dye.json +0e3c30cdbfaa4b73bac1276fb973db733b934619 data/createnuclear/tags/items/anti_radiation_leggings_dye.json +bebad856ee0f047735060f28544eb6149d8c2b20 data/createnuclear/tags/items/anti_radiation_leggings_full_dye.json 2e4d08932c4a84863f0198eb2845f80d8fda1221 data/createnuclear/tags/items/cloth.json 8e6598f14a72a61cbe1e5ed2aaea229fb2dd74e6 data/createnuclear/tags/items/cooler.json -d534438c9314e8b014bf1796060dd801f4ef4d4e data/createnuclear/tags/items/fuel.json +c5587bb72c54f59e9f9a4cd2c3e6bedb78ee198d data/createnuclear/tags/items/fuel.json +925cb97bc13b3122fe17e59ff3ec2fe4d1eaacd5 data/createnuclear/tags/items/lead_ores.json 1a438d724641b4899f18b4abeef0b0708c76ea70 data/createnuclear/tags/items/stone_types/autunite.json +bad88bea18fec41c7ad6fa4d396feacc0346a137 data/createnuclear/tags/items/uranium_ores.json d8d6ad7a4fc31fd68a98b368207c359fb610f417 data/create/tags/blocks/safe_nbt.json 75f0600da4891d0f4a3329fb44cac6c4945a0b49 data/forge/tags/blocks/glass.json -1fd17be1d553e7ddf20494ee1e98084f02137cc8 data/forge/tags/blocks/ores.json +38aa0fddd24ec7dde10f1e2804328660a2019ac8 data/forge/tags/blocks/ores.json 925cb97bc13b3122fe17e59ff3ec2fe4d1eaacd5 data/forge/tags/blocks/ores/lead.json -1ad062f84e124267bb3aae3add3a4e5265a4f8d7 data/forge/tags/blocks/ores/nitrate.json -3f665c928bcdfaa68700d1da7a28fddcbb7bf802 data/forge/tags/blocks/ores/thorium.json bad88bea18fec41c7ad6fa4d396feacc0346a137 data/forge/tags/blocks/ores/uranium.json -4f1ebc0bb505bc510c52671c5935494270ec7008 data/forge/tags/blocks/ores_in_ground/deepslate.json -a04457046c7b0dc46d430af61f83518a84a508d2 data/forge/tags/blocks/ores_in_ground/stone.json +dec8291df390fe12bd034da156c39432cccef0d4 data/forge/tags/blocks/ores_in_ground/deepslate.json +f36fa9b8ea20e21fd4a452ea0ec7ce557acd3ac2 data/forge/tags/blocks/ores_in_ground/stone.json a7258ae3454252e874b324fbd81b880ce52759c4 data/forge/tags/blocks/storage_blocks/lead.json 2b32fe875f887d4a406700d35e0fe5a93548ebb7 data/forge/tags/blocks/storage_blocks/raw_lead.json -725644962932169e20d6f2726e69af199ce3800c data/forge/tags/blocks/storage_blocks/raw_thorium.json 0aafd338eaffcc3f48fb8dc9d18fc969318b06e0 data/forge/tags/blocks/storage_blocks/raw_uranium.json f8074cdbc6e2b560acb4e9da953b23f9825486a6 data/forge/tags/blocks/storage_blocks/steel.json -baae2dfd7e19770072d6261ec68ce157a32be80c data/forge/tags/blocks/storage_blocks/thorium.json a63487094743744be756ad497f483fcd4d11e9bc data/forge/tags/fluids/uranium.json -e15fb3153f19574ecf55a117c026f6bf028f3a87 data/forge/tags/items/armors/boots.json -fb238dbddaf54871f03731ee7cce881af0932459 data/forge/tags/items/armors/chestplates.json -b3f8c7d4cc47db1954a7470d37e5e4e6549c9480 data/forge/tags/items/armors/helmets.json -9f9c6b5fe521e31527d238cd230e6f3ef689857f data/forge/tags/items/armors/leggings.json -419d05292cb4947015b5320c991500e5a51f5466 data/forge/tags/items/buckets/nitrogen.json -c53aa7c19dc2c02afdab4bc7e3188ca2b2224af6 data/forge/tags/items/buckets/thorium.json +fadb3957b979d82146790ef3550e38606760421e data/forge/tags/items/armors/boots.json +0845acff015f78c494df2cd6754c5cff10d77c05 data/forge/tags/items/armors/chestplates.json +b5d23f0bc26a4e3a72cde40f3c6d59c03c818b4d data/forge/tags/items/armors/helmets.json +bebad856ee0f047735060f28544eb6149d8c2b20 data/forge/tags/items/armors/leggings.json 9ac9f967f480bbbe186815331a7e1771c8feea57 data/forge/tags/items/buckets/uranium.json -6c2e44175fc9799f1cf69287a6b21ef3f8c659e1 data/forge/tags/items/dusts.json +25c93720c5221fac9aeb0ae47182ef59e0a0c2bb data/forge/tags/items/coal_dusts.json +4c65712ad229579aed33c75220c37f9a70134cb2 data/forge/tags/items/dusts.json 25c93720c5221fac9aeb0ae47182ef59e0a0c2bb data/forge/tags/items/dusts/coal.json -d6176bfd8cf296e3d5b5601ff2da8fc59620a092 data/forge/tags/items/dusts/thorium.json 69b53861489d10b3a836be9812af97c999833470 data/forge/tags/items/dusts/uranium.json 75f0600da4891d0f4a3329fb44cac6c4945a0b49 data/forge/tags/items/glass.json -69b0ac78e6b1f46e527de8e63aba797c335290f9 data/forge/tags/items/ingots.json +81d5270bd69ab7d6ffef70dc7867a498202eb4b4 data/forge/tags/items/ingots.json 30fa647448df4131c1d6460756f18583a493ee31 data/forge/tags/items/ingots/lead.json 24bc6e0cdae825d9e5d1500567ae81d83c15a88d data/forge/tags/items/ingots/steel.json -a50840c5dc4023ab62b7faa86a5fd9f032a50caf data/forge/tags/items/ingots/thorium.json -a77ba3f79cd096f38bd53b5f1b6a5696b864e9df data/forge/tags/items/nuggets.json +3245aa72f5bb5f83632ab05f449e8a2d576ac386 data/forge/tags/items/nuggets.json 41ff866ec94383906342a0d1594554e3063b9d0f data/forge/tags/items/nuggets/lead.json 1ec402fda0c91947be220066973f79f3e522663f data/forge/tags/items/nuggets/steel.json -31d6f68b8cbb51e44700987c1b242a855e120b33 data/forge/tags/items/nuggets/thorium.json 925cb97bc13b3122fe17e59ff3ec2fe4d1eaacd5 data/forge/tags/items/ores/lead.json -1ad062f84e124267bb3aae3add3a4e5265a4f8d7 data/forge/tags/items/ores/nitrate.json -3f665c928bcdfaa68700d1da7a28fddcbb7bf802 data/forge/tags/items/ores/thorium.json bad88bea18fec41c7ad6fa4d396feacc0346a137 data/forge/tags/items/ores/uranium.json -fd86e3b3265d7069f3cfff0cfb5d086eea5a813a data/forge/tags/items/raw_materials.json +cdebf2b4eabcf71ee4566b7fbf22f18990a4e06b data/forge/tags/items/raw_materials.json 610ed700de0886bcb4b1c90100c35f3034c53940 data/forge/tags/items/raw_materials/lead.json -61f6f1f4b16790c36a45f769141900772ce4529a data/forge/tags/items/raw_materials/thorium.json 03a88f0d9f44d3c338b82bf92b22a14dec490bef data/forge/tags/items/raw_materials/uranium.json -fd86e3b3265d7069f3cfff0cfb5d086eea5a813a data/forge/tags/items/raw_ores.json -4a76a7534e658f2f41e33e3eb5fc2cc55f5e58a8 data/forge/tags/items/rods.json +cdebf2b4eabcf71ee4566b7fbf22f18990a4e06b data/forge/tags/items/raw_ores.json +c1ad472460350e6abd024de7785cd870dad05cd9 data/forge/tags/items/rods.json a7258ae3454252e874b324fbd81b880ce52759c4 data/forge/tags/items/storage_blocks/lead.json 2b32fe875f887d4a406700d35e0fe5a93548ebb7 data/forge/tags/items/storage_blocks/raw_lead.json -725644962932169e20d6f2726e69af199ce3800c data/forge/tags/items/storage_blocks/raw_thorium.json 0aafd338eaffcc3f48fb8dc9d18fc969318b06e0 data/forge/tags/items/storage_blocks/raw_uranium.json f8074cdbc6e2b560acb4e9da953b23f9825486a6 data/forge/tags/items/storage_blocks/steel.json -baae2dfd7e19770072d6261ec68ce157a32be80c data/forge/tags/items/storage_blocks/thorium.json e84d8e1fa924bec3e226b8917b4973b9629a5f52 data/minecraft/tags/blocks/all/campfires.json 8875ba7215b30d75573e3dcfe46e0b690b1d7f2f data/minecraft/tags/blocks/azalea_root_replaceable.json e84d8e1fa924bec3e226b8917b4973b9629a5f52 data/minecraft/tags/blocks/campfires.json @@ -680,17 +551,16 @@ e84d8e1fa924bec3e226b8917b4973b9629a5f52 data/minecraft/tags/blocks/campfires.js 75f0600da4891d0f4a3329fb44cac6c4945a0b49 data/minecraft/tags/blocks/impermeable.json 8875ba7215b30d75573e3dcfe46e0b690b1d7f2f data/minecraft/tags/blocks/lush_ground_replaceable.json e84d8e1fa924bec3e226b8917b4973b9629a5f52 data/minecraft/tags/blocks/mineable/axe.json -299ef1307fe3379e6919e195533d45e342939765 data/minecraft/tags/blocks/mineable/pickaxe.json +f3aae3bed8f4a0faad6d92489d9f8e9c0c10e30f data/minecraft/tags/blocks/mineable/pickaxe.json a7d4278d8a39649c8b658ad2f3f1d092cb012bdf data/minecraft/tags/blocks/mineable/shovel.json 8875ba7215b30d75573e3dcfe46e0b690b1d7f2f data/minecraft/tags/blocks/moss_replaceable.json -af6dc9f8e98b963b468d2ec348343783ec30be1d data/minecraft/tags/blocks/needs_diamond_tool.json -1fd17be1d553e7ddf20494ee1e98084f02137cc8 data/minecraft/tags/blocks/needs_iron_tool.json +41d3382a5f829a516326fa59334529abffdc8fb2 data/minecraft/tags/blocks/needs_diamond_tool.json +38aa0fddd24ec7dde10f1e2804328660a2019ac8 data/minecraft/tags/blocks/needs_iron_tool.json 9b9e13222cf9d971353888483c5f041cbb664dc3 data/minecraft/tags/blocks/slabs.json 7e5c701218bfbd3b186b102ff52dc79454a39e8f data/minecraft/tags/blocks/stairs.json 92fe109294976e85a9b9763124896e012a17c98a data/minecraft/tags/blocks/walls.json 2535c56fd6376328fbca0528562ecc2046a3b655 data/minecraft/tags/entity_types/fall_damage_immune.json a63487094743744be756ad497f483fcd4d11e9bc data/minecraft/tags/fluids/lava.json -9b1c04e4516407eb6df9f1262fd73a71605f3bb1 data/minecraft/tags/fluids/water.json 9b9e13222cf9d971353888483c5f041cbb664dc3 data/minecraft/tags/items/slabs.json 7e5c701218bfbd3b186b102ff52dc79454a39e8f data/minecraft/tags/items/stairs.json 92fe109294976e85a9b9763124896e012a17c98a data/minecraft/tags/items/walls.json diff --git a/src/generated/resources/.cache/708b1206ce73e235f43eb2a5fd72b93671cfba4e b/src/generated/resources/.cache/708b1206ce73e235f43eb2a5fd72b93671cfba4e index f15846481..b0e0ba0c7 100644 --- a/src/generated/resources/.cache/708b1206ce73e235f43eb2a5fd72b93671cfba4e +++ b/src/generated/resources/.cache/708b1206ce73e235f43eb2a5fd72b93671cfba4e @@ -1,9 +1,7 @@ -// 1.20.1 2026-08-21T19:32:31.3545102 createnuclear's mechanical crafting recipes +// 1.20.1 2025-11-11T12:39:11.5625077 createnuclear's mechanical crafting recipes 0a56332199941d1db61ee7512130d2664fd73e46 data/createnuclear/recipes/mechanical_crafting/graphite_rod.json -13bbcaa279d141281856ee7dbed5d3ea105e2389 data/createnuclear/recipes/mechanical_crafting/reactor_alarm.json 85f68439da9d4bb70d1308b7b64db0e30fec9e51 data/createnuclear/recipes/mechanical_crafting/reactor_controller.json 11b4c4d65d4f6981c34e7f97e0e8dc3468376b05 data/createnuclear/recipes/mechanical_crafting/reactor_cooler.json 8228bb2d850dfd474e2ce142ac9a0ff6ab707f07 data/createnuclear/recipes/mechanical_crafting/reactor_core.json -9b2a4dee0019fa8506cc26fdd20802e0f5baba1b data/createnuclear/recipes/mechanical_crafting/reactor_frame.json -f6eda56d293f771067b1d5b661284ed1ce9e8f93 data/createnuclear/recipes/mechanical_crafting/thorium_rod.json +48db9006423a3762a24c7cae7a3534f124aa0e4c data/createnuclear/recipes/mechanical_crafting/reactor_frame.json 0a1d26105f14cb2a01b18b9f050c900412f917fb data/createnuclear/recipes/mechanical_crafting/uranium_rod.json diff --git a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e index f27cbeaba..1ab24c53b 100644 --- a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e +++ b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e @@ -1,37 +1,29 @@ -// 1.20.1 2026-08-21T19:32:31.3428624 Recipes +// 1.20.1 2025-11-11T12:39:11.5491243 Recipes 229dafab82da54169697898f94d3be266a77d5ff data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead.json -53d8b344f1d5b0a0ce7d6082f5e214a6ae9c0bef data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json +14b3abbc5d9b1950f65ef1cc03f79a36c8820efc data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json 028d2b4f2f5ec4764791ca5c28c19b6848b00bea data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_raw_lead.json -203072b1b00fca38c88c3c7d9141ce044e1cded3 data/createnuclear/advancements/recipes/misc/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json -3aa4a3f3fdccc2b33ae50babf6db874f98835563 data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json +605ccb2acc7e944ddbce2e962af3278e47a04627 data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json a72a296cd6cad499e78fa33f74194d74e9d2eef0 data/createnuclear/advancements/recipes/misc/crafting/lead_block_from_compacting.json c6acb8cd38541f9baf6e9045bf2547666a48dd66 data/createnuclear/advancements/recipes/misc/crafting/lead_ingot_from_compacting.json 7be9394a2c56bc4683288e45a44bfc5dda6a4b6e data/createnuclear/advancements/recipes/misc/crafting/steel_block_from_compacting.json 4ad292cd97e78f82b3ed9d4123f5e95c5ddea55c data/createnuclear/advancements/recipes/misc/crafting/steel_ingot_from_compacting.json -c14100e996c2146f0c0c062ef489380e11b36b46 data/createnuclear/advancements/recipes/misc/crafting/thorium_block_from_compacting.json -6e8a83dd9ce1ed273bedceb577670f07bc18b750 data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_compacting.json a98dc6de94e6658d78ec28b77959ae9cb17b1d58 data/createnuclear/advancements/recipes/misc/crafting/white_cloth.json 067475701d6f059793c064718b7bba4b939ce380 data/createnuclear/advancements/recipes/misc/crafting/white_cloth_wool.json d4162de75c52e6106a386dcf4c5c3bc5b74261d6 data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead.json -26308967967782cb80e52e0cda39b27580923d53 data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json +0c347228b63702ba70d4257c4b5642133fb8e5b8 data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json 1bb03dfa15ff7f76bc2accdd7d26b520605ae4bf data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_raw_lead.json -4e49562ac3d71b9c1648649ac94858df73b1b2f6 data/createnuclear/advancements/recipes/misc/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json -e2928f9172550d20f060a7fc5fcd690ab9f2bf16 data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json +d7cfc6f1ff4d39df0df526ec3723e8d18d198945 data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json 932672d0475e9c82d033d395ee12010e9f3d6828 data/createnuclear/recipes/blasting/lead_ingot_for_lead.json -065cd18605273ab59b5f68d2e21a40d4c144f51c data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json +b2ec2f955ece9110bf315a2773b70999e268f81d data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json c46810e5000a34edfceed6a8457595afe9d0377d data/createnuclear/recipes/blasting/lead_ingot_for_raw_lead.json -ecfe4877ed719c02863e50a2de99a54bca0a6672 data/createnuclear/recipes/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json -247249727f830f450bb81d6da4f418d87c8f9d0a data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json +978cc9d92268673050da5697482f4013a63a65f1 data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json 319718ee24e2c5bdeba2b16cd99c55fc7f97f9e4 data/createnuclear/recipes/crafting/lead_block_from_compacting.json 17e9a54a54b1ed1f6af0a3fbb0771262af585a95 data/createnuclear/recipes/crafting/lead_ingot_from_compacting.json 8e2e9b598fe86d2238915fb59486bccfac737e16 data/createnuclear/recipes/crafting/steel_block_from_compacting.json af5d168185e516ea79c335ac7eb6652b99723143 data/createnuclear/recipes/crafting/steel_ingot_from_compacting.json -5bfd142e7275ee50951d6848745bf4a8cc3fc62d data/createnuclear/recipes/crafting/thorium_block_from_compacting.json -53ace49121c54906024163655b786cefdd84e801 data/createnuclear/recipes/crafting/thorium_ingot_from_compacting.json f2841ff83321c5bf5d43649fb204fa3a97fd596e data/createnuclear/recipes/crafting/white_cloth.json 93e75639c60d69067daddecfb2fa480a8e2040c4 data/createnuclear/recipes/crafting/white_cloth_wool.json 165a3c45b53d0a94149f26300f609c2fd7c688f1 data/createnuclear/recipes/smelting/lead_ingot_for_lead.json -8d587bca58cdcc2320a115d0b653dbba7e7785ab data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json +4121c89708b0b069ece6dd9356dd3865af602779 data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json 7acfaccfb12d280e8d858fdaf7f9048a5ac29e26 data/createnuclear/recipes/smelting/lead_ingot_for_raw_lead.json -ad4541bf1f0994177d3f6ae830abb279c4d222f3 data/createnuclear/recipes/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json -279e5b03513f47f91867e356f9ccc77ee1f39629 data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json +93fe12ad36a99451009518d71ac105969a1ef2aa data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json diff --git a/src/generated/resources/.cache/abc32a97b4e744838610c53dbbbaaf9f7d29a557 b/src/generated/resources/.cache/abc32a97b4e744838610c53dbbbaaf9f7d29a557 index c8baaf358..8e1d4e818 100644 --- a/src/generated/resources/.cache/abc32a97b4e744838610c53dbbbaaf9f7d29a557 +++ b/src/generated/resources/.cache/abc32a97b4e744838610c53dbbbaaf9f7d29a557 @@ -1,44 +1,26 @@ -// 1.20.1 2026-08-21T19:32:31.3332323 Create Nuclear Advancements -605607e2254e01df3e30839921ddd33635250d04 data/createnuclear/advancements/absolute_zero.json -b6aa52d55ebb681fa0784c5419667c88a4b0e6db data/createnuclear/advancements/anti_radiation_armor.json -fe81bbd052ebe4a70c48912b47e12ed4e4523d1d data/createnuclear/advancements/automatic_uranium.json -46adc59d053ab49e13dd89106edf1ba23b4840f8 data/createnuclear/advancements/avoiding_cancer.json -3456f765a017423c5ebab69766250523f9895ec3 data/createnuclear/advancements/chemistry_101.json -5077f1f3f28142404fea023fa47a4bfe9c388780 data/createnuclear/advancements/chill_out.json +// 1.20.1 2025-11-11T12:39:11.5247801 Create Nuclear Advancements +384b002f95b70c595cedc692ed219d45931f1f5b data/createnuclear/advancements/anti_radiation_armor.json +41069c530d33ea7d59cccddada0ceececd69f5af data/createnuclear/advancements/automatic_uranium.json 2e8127a4546d680ab502c6e3c71f49d8df2b1b18 data/createnuclear/advancements/coal_dust.json -a0d591c0cfa26fbd3ea83da54cdd9f900d58926c data/createnuclear/advancements/craft_enriching_campfire.json -826cf04c3b3768dd1a5834ce24dc4301435fed75 data/createnuclear/advancements/crunchy_uranium.json -f85ce01405f65f942bbc2960442677ef5a3863d9 data/createnuclear/advancements/cryogenic_baptism.json -efcd55929d60b9925ac4833ad1171ddb81dd47a0 data/createnuclear/advancements/dye_anti_radiation_armor.json +2c2cfb8724f39fc5e101a34dce08de6e33f6d1f8 data/createnuclear/advancements/dye_anti_radiation_armor.json eda669191bc6149e3feee4a2b9b25b64e1d7da60 data/createnuclear/advancements/enriched_yellowcake.json -a4c2c7a01789564aa45097c6ce38c55b75264db7 data/createnuclear/advancements/feeding_the_reactor.json -6d6de5eb0a2736287ba0149dd54746319df6f271 data/createnuclear/advancements/fueling_the_reactor.json -68d2b2361f527a1d9fbe48da95f3f313654c6761 data/createnuclear/advancements/getting_concentrated.json +fb039aef2e300f0f4eb946b8367e154a1772cc90 data/createnuclear/advancements/full_anti_radiation_armor.json bffbc5007ddb20829768a122cc514f84c2dee1e0 data/createnuclear/advancements/graphene.json 8e89393b2e396243d12cf5b29e283ab97c814519 data/createnuclear/advancements/graphite_rod.json 07e0edb7519c4e755446e95086487f5c8bbbbb17 data/createnuclear/advancements/lead_ingot.json -2d4e1850876ff75bf3020c3e772799c0fe7ac825 data/createnuclear/advancements/no_time_to_die.json e9f9668d36ebd431502b20296f774c83a1d050f0 data/createnuclear/advancements/raw_lead.json -4f6fe1f20d539a316966f8557988c3ba5f5e986e data/createnuclear/advancements/raw_thorium.json 0ac2cb2226f212b6c56c2f05dfa882b46f066f6f data/createnuclear/advancements/raw_uranium.json e9d8bd7f04cac0f3ea72a02a5cdc4cc98f728d98 data/createnuclear/advancements/reactor_blueprint.json 46f6044ed5c777f9fe08f7957c3d26e39d69f3c5 data/createnuclear/advancements/reactor_casing.json bf6947708102180f9cd08e31305253774187d763 data/createnuclear/advancements/reactor_controller.json -74363604b80b4a402fb582711f5967b9f68051e1 data/createnuclear/advancements/reactor_cooler.json +842add59177cc7aec1b55102ec0495a522ced05c data/createnuclear/advancements/reactor_cooler.json f88401b0664256c3b2cb35c018f8f738b60bc3e9 data/createnuclear/advancements/reactor_core.json -eb2975b0ff5956717aa1737794258d4ed7d7528f data/createnuclear/advancements/reactor_frame.json +07047ca35a1e75dfe3f7885ad8b5a63ce53e1b34 data/createnuclear/advancements/reactor_frame.json +4f963ff2f6c09a0272c25ebdb46423700e5256eb data/createnuclear/advancements/reactor_input.json +b19a554150aa4d9dee594574e310c436d7bfc66d data/createnuclear/advancements/reactor_output.json 91aab6f0a18aee167c63a3aece5fa9778cf52b0b data/createnuclear/advancements/reinforced_glass.json -734a40badf33a911d1e0adb9a2b18688d5cb5401 data/createnuclear/advancements/root.json -79e11acd6d9c16e92bf10d417251a9d6859399c3 data/createnuclear/advancements/silence_the_core.json +a7b50865e9c0a441d749bf386f38e0a9dd69e5c8 data/createnuclear/advancements/root.json a44ae76ec00fae36f7df13e43f20ebe389b416d5 data/createnuclear/advancements/steel_ingot.json -6db13694145ff3bbff4abfb58e857f404f0add73 data/createnuclear/advancements/t1.json -663bc37c0587b13e9578d75309825f76c0abe4b9 data/createnuclear/advancements/t2.json -8f8e494675b2a506e1801c92a4ab34410e286871 data/createnuclear/advancements/t3.json -22df89169fa9f9f53156f3044e4ebc9a542fb244 data/createnuclear/advancements/thorium_dust.json -f7d455c664ca65948f6230eda0621365da68bbcd data/createnuclear/advancements/thorium_ingot.json -2f5be65619e05a1213ef6e71475b7b0c361a6be5 data/createnuclear/advancements/thorium_liquid.json -c845dedfc3fe75d51227237a2fb1f5f14f28354b data/createnuclear/advancements/thorium_rod.json -d332d15cb59c5f942c728748121c4249e932df17 data/createnuclear/advancements/unlimited_power.json 5a41894d2428fb7297b98a6b78925a17af2a3095 data/createnuclear/advancements/uranium_liquid.json 01ac168072fa666f64148113ae806ec0b5ea5158 data/createnuclear/advancements/uranium_powder.json 06d1bfea924a4ea35ce78937adcab967cce02b67 data/createnuclear/advancements/uranium_rod.json diff --git a/src/generated/resources/.cache/fed443662143001aeb5341375f6f5ef31d10baea b/src/generated/resources/.cache/fed443662143001aeb5341375f6f5ef31d10baea index 0a5738b55..3fb0164c0 100644 --- a/src/generated/resources/.cache/fed443662143001aeb5341375f6f5ef31d10baea +++ b/src/generated/resources/.cache/fed443662143001aeb5341375f6f5ef31d10baea @@ -1,27 +1,10 @@ -// 1.20.1 2026-08-21T19:32:31.3399628 CreateNuclear Generated Registry Entries -46e263393c1672a180bc12b99f9e39adf22e66b5 data/createnuclear/createnuclear/fluids/type/fallback.json -2837d5ecbd5735f39c1fac545469486e09c502e0 data/createnuclear/createnuclear/fluids/type/nitrogen.json -152a58adb9f86e1c9fac62fd2095ba8413142568 data/createnuclear/createnuclear/fluids/type/water.json -15403b1cee46d300af2247a08485c04ccd80cfc0 data/createnuclear/createnuclear/rods/type/fallback.json -9b26dc9810e426fa58e03de22a96f45403e5f1b3 data/createnuclear/damage_type/fan_radiation.json -8c374052eefd34e87959a1f643e60b674f0345f8 data/createnuclear/damage_type/radiation.json +// 1.20.1 2025-11-11T12:39:11.546555 CreateNuclear Generated Registry Entries 5edbd74546f4088818e02bb7a5c5eb2ecfe25623 data/createnuclear/forge/biome_modifier/lead_ore.json -5c8a0b9f47166236a030ecbcbec7f42cfaca8378 data/createnuclear/forge/biome_modifier/nitrate_ore.json 72173023e6a31748692e750db0f5fa8c555d1009 data/createnuclear/forge/biome_modifier/striated_ores_overworld.json -1d15657126bab7c0b4355d0dcb9addc2d417ed01 data/createnuclear/forge/biome_modifier/thorium_ore.json fa32145101dc12ec914684fec8c5cbb995d2c051 data/createnuclear/forge/biome_modifier/uranium_ore.json -a3399faccac4549c2c7d41a5863883ecea074e99 data/createnuclear/worldgen/biome/irradiated_land.json -d9a89f0f1804d33867b4e0c28cbe0cf69ce131f5 data/createnuclear/worldgen/configured_feature/lead_ore.json -c3bb421f6bf5a02b09a178d4d1f003679b86c919 data/createnuclear/worldgen/configured_feature/nitrate_ore.json +b68555f371c9700aa4ecfa9370b010de8fe25b60 data/createnuclear/worldgen/configured_feature/lead_ore.json 4f11c0a518c0de7857919983fc638ba551c6630a data/createnuclear/worldgen/configured_feature/striated_ores_overworld.json -aaa284a4e57635bf05f4539125b33a2f9176ed5b data/createnuclear/worldgen/configured_feature/thorium_ore.json b0e1ee7314412507fd7346cb48b29d105f6186ad data/createnuclear/worldgen/configured_feature/uranium_ore.json -59d61c02881d710b0426a0955f6945b7a12d219f data/createnuclear/worldgen/density_function/irradiated/erosion.json -59d61c02881d710b0426a0955f6945b7a12d219f data/createnuclear/worldgen/density_function/irradiated/final_density.json -7f5f110a211b82bc22627b2f901c5f3c6a1265dd data/createnuclear/worldgen/noise/irradiated/erosion.json -ea836bafce53bcb743cb2de5ba38271291483865 data/createnuclear/worldgen/noise_settings/irradiated_noise.json -f11d981e79cf92130a47ad564925d7be26ffbc0b data/createnuclear/worldgen/placed_feature/lead_ore.json -e69f61cbb4bf2c50a6123ddc87c024c801bb78d1 data/createnuclear/worldgen/placed_feature/nitrate_ore.json -d0e47433fc86ee2acd9dde56f0465aae54fe5fe0 data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json -5e64cf339847e8c89e4bbb94a2382262a0ce66ac data/createnuclear/worldgen/placed_feature/thorium_ore.json -148db47005efc228a743e41fd60011b8bff8e78a data/createnuclear/worldgen/placed_feature/uranium_ore.json +d45ed5f7008864ba4f60c409038ad428a280fd7f data/createnuclear/worldgen/placed_feature/lead_ore.json +f26be417cb34461ecb180e77a9a749eaaf4c9880 data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json +bed936158c61471513252910d9e3b0e2de610f1a data/createnuclear/worldgen/placed_feature/uranium_ore.json diff --git a/src/generated/resources/assets/createnuclear/blockstates/deepslate_nitrate_ore.json b/src/generated/resources/assets/createnuclear/blockstates/deepslate_nitrate_ore.json deleted file mode 100644 index 0b75136ad..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/deepslate_nitrate_ore.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/deepslate_nitrate_ore" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/deepslate_thorium_ore.json b/src/generated/resources/assets/createnuclear/blockstates/deepslate_thorium_ore.json deleted file mode 100644 index 9effc25d3..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/deepslate_thorium_ore.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/deepslate_thorium_ore" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/nitrate_ore.json b/src/generated/resources/assets/createnuclear/blockstates/nitrate_ore.json deleted file mode 100644 index 2f14544eb..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/nitrate_ore.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/nitrate_ore" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/nitrogen.json b/src/generated/resources/assets/createnuclear/blockstates/nitrogen.json deleted file mode 100644 index 113fb23f2..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/nitrogen.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/nitrogen" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/raw_thorium_block.json b/src/generated/resources/assets/createnuclear/blockstates/raw_thorium_block.json deleted file mode 100644 index 626939bb5..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/raw_thorium_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/raw_thorium_block" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/reactor_alarm.json b/src/generated/resources/assets/createnuclear/blockstates/reactor_alarm.json deleted file mode 100644 index 1a4f20323..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/reactor_alarm.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/reactor_alarm" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/reactor_controller.json b/src/generated/resources/assets/createnuclear/blockstates/reactor_controller.json index cbd0a7cfc..28a903c51 100644 --- a/src/generated/resources/assets/createnuclear/blockstates/reactor_controller.json +++ b/src/generated/resources/assets/createnuclear/blockstates/reactor_controller.json @@ -1,63 +1,33 @@ { "variants": { - "active=false,assembled=false,facing=east": { - "model": "createnuclear:block/reactor/controller/off", + "assembled=false,facing=east": { + "model": "createnuclear:block/reactor/controller/block", "y": 270 }, - "active=false,assembled=false,facing=north": { - "model": "createnuclear:block/reactor/controller/off", + "assembled=false,facing=north": { + "model": "createnuclear:block/reactor/controller/block", "y": 180 }, - "active=false,assembled=false,facing=south": { - "model": "createnuclear:block/reactor/controller/off" + "assembled=false,facing=south": { + "model": "createnuclear:block/reactor/controller/block" }, - "active=false,assembled=false,facing=west": { - "model": "createnuclear:block/reactor/controller/off", + "assembled=false,facing=west": { + "model": "createnuclear:block/reactor/controller/block", "y": 90 }, - "active=false,assembled=true,facing=east": { - "model": "createnuclear:block/reactor/controller/standby", + "assembled=true,facing=east": { + "model": "createnuclear:block/reactor/controller/block", "y": 270 }, - "active=false,assembled=true,facing=north": { - "model": "createnuclear:block/reactor/controller/standby", + "assembled=true,facing=north": { + "model": "createnuclear:block/reactor/controller/block", "y": 180 }, - "active=false,assembled=true,facing=south": { - "model": "createnuclear:block/reactor/controller/standby" + "assembled=true,facing=south": { + "model": "createnuclear:block/reactor/controller/block" }, - "active=false,assembled=true,facing=west": { - "model": "createnuclear:block/reactor/controller/standby", - "y": 90 - }, - "active=true,assembled=false,facing=east": { - "model": "createnuclear:block/reactor/controller/off", - "y": 270 - }, - "active=true,assembled=false,facing=north": { - "model": "createnuclear:block/reactor/controller/off", - "y": 180 - }, - "active=true,assembled=false,facing=south": { - "model": "createnuclear:block/reactor/controller/off" - }, - "active=true,assembled=false,facing=west": { - "model": "createnuclear:block/reactor/controller/off", - "y": 90 - }, - "active=true,assembled=true,facing=east": { - "model": "createnuclear:block/reactor/controller/on", - "y": 270 - }, - "active=true,assembled=true,facing=north": { - "model": "createnuclear:block/reactor/controller/on", - "y": 180 - }, - "active=true,assembled=true,facing=south": { - "model": "createnuclear:block/reactor/controller/on" - }, - "active=true,assembled=true,facing=west": { - "model": "createnuclear:block/reactor/controller/on", + "assembled=true,facing=west": { + "model": "createnuclear:block/reactor/controller/block", "y": 90 } } diff --git a/src/generated/resources/assets/createnuclear/blockstates/reactor_fluid_input.json b/src/generated/resources/assets/createnuclear/blockstates/reactor_fluid_input.json deleted file mode 100644 index 2ada65ac1..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/reactor_fluid_input.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "variants": { - "facing=down": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input_vertical", - "x": 180 - }, - "facing=east": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input", - "y": 270 - }, - "facing=north": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input", - "y": 180 - }, - "facing=south": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input" - }, - "facing=up": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input_vertical" - }, - "facing=west": { - "model": "createnuclear:block/reactor/fluid_input/fluid_input", - "y": 90 - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/reactor_input.json b/src/generated/resources/assets/createnuclear/blockstates/reactor_input.json new file mode 100644 index 000000000..d6e05583e --- /dev/null +++ b/src/generated/resources/assets/createnuclear/blockstates/reactor_input.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "createnuclear:block/reactor/input/block", + "y": 270 + }, + "facing=north": { + "model": "createnuclear:block/reactor/input/block", + "y": 180 + }, + "facing=south": { + "model": "createnuclear:block/reactor/input/block" + }, + "facing=west": { + "model": "createnuclear:block/reactor/input/block", + "y": 90 + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/reactor_rod_input.json b/src/generated/resources/assets/createnuclear/blockstates/reactor_rod_input.json deleted file mode 100644 index 37ee320b8..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/reactor_rod_input.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "variants": { - "facing=down": { - "model": "createnuclear:block/reactor/rod_input/rod_input_vertical", - "x": 180 - }, - "facing=east": { - "model": "createnuclear:block/reactor/rod_input/rod_input", - "y": 270 - }, - "facing=north": { - "model": "createnuclear:block/reactor/rod_input/rod_input", - "y": 180 - }, - "facing=south": { - "model": "createnuclear:block/reactor/rod_input/rod_input" - }, - "facing=up": { - "model": "createnuclear:block/reactor/rod_input/rod_input_vertical" - }, - "facing=west": { - "model": "createnuclear:block/reactor/rod_input/rod_input", - "y": 90 - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/thorium.json b/src/generated/resources/assets/createnuclear/blockstates/thorium.json deleted file mode 100644 index 007ce08d8..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/thorium.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/thorium" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/thorium_block.json b/src/generated/resources/assets/createnuclear/blockstates/thorium_block.json deleted file mode 100644 index cb8fa6377..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/thorium_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/thorium_block" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/blockstates/thorium_ore.json b/src/generated/resources/assets/createnuclear/blockstates/thorium_ore.json deleted file mode 100644 index c976ca170..000000000 --- a/src/generated/resources/assets/createnuclear/blockstates/thorium_ore.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "createnuclear:block/thorium_ore" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/lang/en_ud.json b/src/generated/resources/assets/createnuclear/lang/en_ud.json index e8541015e..498881bd0 100644 --- a/src/generated/resources/assets/createnuclear/lang/en_ud.json +++ b/src/generated/resources/assets/createnuclear/lang/en_ud.json @@ -1,46 +1,24 @@ { - "advancement.createnuclear.absolute_zero": "oɹǝZ ǝʇnןosqⱯ", - "advancement.createnuclear.absolute_zero.desc": "uǝboɹʇıu pınbıן uıɐʇqo oʇ ǝʇɐɹʇuǝɔuoɔ uǝboɹʇıu pǝןooɔ xıW", - "advancement.createnuclear.anti_radiation_armor": "ɹoɯɹⱯ uoıʇɐıpɐᴚ ıʇuⱯ", + "advancement.createnuclear.anti_radiation_armor": "ɹoɯɹⱯ uoıʇɐıpɐɹ ıʇuⱯ", "advancement.createnuclear.anti_radiation_armor.desc": "uoıʇɐıpɐɹ ɯoɹɟ ɟןǝsɹnoʎ ʇɔǝʇoɹd oʇ ǝɔǝıd ɹoɯɹɐ uoıʇɐıpɐɹ-ıʇuɐ ʇsɹıɟ ɹnoʎ ʇɟɐɹƆ", "advancement.createnuclear.automatic_uranium": "ɯnıuɐɹ∩ buıʇɐɯoʇnⱯ", "advancement.createnuclear.automatic_uranium.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nbuıssǝɔoɹd ɯnıuɐɹn ɔıʇɐɯoʇnɐ ǝɥʇ buısn ɹǝpʍod ɯnıuɐɹn ǝɯos uıɐʇqO", - "advancement.createnuclear.avoiding_cancer": "pǝɹǝʌoƆ ɟןǝsɹnoʎ dǝǝʞ ʇsǝᗺ", - "advancement.createnuclear.avoiding_cancer.desc": "ǝɯıʇ ʇsɹıɟ ǝɥʇ ɹoɟ ɹoɯɹɐ uoıʇɐıpɐɹ-ıʇuɐ dınbƎ", - "advancement.createnuclear.chemistry_101": "ʇI buıɥsnɹƆ", - "advancement.createnuclear.chemistry_101.desc": "ǝʇɐɹʇıu uıɐʇqo oʇ ǝuoʇsǝɯıן ɥsnɹɔ ɹo ǝɹo ǝʇɐɹʇıu ǝuıW", - "advancement.createnuclear.chill_out": "ʇnO ןןıɥƆ", - "advancement.createnuclear.chill_out.desc": "uoıʇɔɐɟǝnbıן ɹoɟ ʇı ǝɹɐdǝɹd oʇ ǝʇɐɹʇuǝɔuoɔ uǝboɹʇıu uʍop ןooƆ", "advancement.createnuclear.coal_dust": "ʇsnᗡ ןɐoƆ", "advancement.createnuclear.coal_dust.desc": "ןɐıɹǝʇɐɯ buıʇɟɐɹɔ ʎǝʞ ɐ 'ʇsnp ןɐoɔ uıɐʇqo oʇ ןɐoɔɹɐɥɔ ɹo ןɐoɔ ɥsnɹƆ", - "advancement.createnuclear.craft_enriching_campfire": "¿ǝʞoɯS ǝʞɐW ʇɐɥ⟘ sǝoᗡ", - "advancement.createnuclear.craft_enriching_campfire.desc": "ǝɹıɟdɯɐƆ buıɥɔıɹuƎ uɐ ʇɟɐɹƆ", - "advancement.createnuclear.crunchy_uranium": "ʇɔǝdxƎ noʎ pıᗡ ʇɐɥM", - "advancement.createnuclear.crunchy_uranium.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\n¿¿ ʇɐɥʍ pıp noʎ ˙˙˙˙˙oɹᗺ", - "advancement.createnuclear.cryogenic_baptism": "ǝɹoɯʎuⱯ ʇǝǝℲ ʎW ןǝǝℲ ʇ,uɐɔ I", - "advancement.createnuclear.cryogenic_baptism.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nǝɯıʇ ʇsɹıɟ ǝɥʇ ɹoɟ uǝboɹʇıu pınbıן ǝɥʇ uı ɯıʍS", "advancement.createnuclear.dye_anti_radiation_armor": "ɹoɯɹⱯ ʎW dɯıԀ", "advancement.createnuclear.dye_anti_radiation_armor.desc": "ɹoןoɔ ʎuɐ oʇ ɹoɯɹɐ uoıʇɐıpɐɹ ıʇuɐ ɹnoʎ ǝʎᗡ", "advancement.createnuclear.enriched_yellowcake": "ǝʞɐɔʍoןןǝʎ buıɔuɐɥuƎ", "advancement.createnuclear.enriched_yellowcake.desc": "ןnɟɹǝʍod ǝɹoɯ ʇı ǝʞɐɯ puɐ ǝʞɐɔʍoןןǝʎ ɥɔıɹuǝ oʇ uɐɟ ɐ ǝs∩", - "advancement.createnuclear.feeding_the_reactor": "ɹoʇɔɐǝᴚ ǝɥ⟘ buıpǝǝℲ", - "advancement.createnuclear.feeding_the_reactor.desc": "ɹoʇɔɐǝɹ ɹnoʎ oʇuı spoɹ buıןooɔ puɐ buıʇɐǝɥ pǝǝɟ oʇ ʇnduI poᴚ ɹoʇɔɐǝᴚ ɐ ʇɟɐɹƆ", - "advancement.createnuclear.fueling_the_reactor": "ɹoʇɔɐǝᴚ ǝɥ⟘ buıןǝnℲ", - "advancement.createnuclear.fueling_the_reactor.desc": "ɹoʇɔɐǝɹ ɹnoʎ oʇuı ʇuɐןooɔ pınbıן pǝǝɟ oʇ ʇnduI pınןℲ ɹoʇɔɐǝᴚ ɐ ʇɟɐɹƆ", - "advancement.createnuclear.getting_concentrated": "pǝʇɐɹʇuǝɔuoƆ buıʇʇǝ⅁", - "advancement.createnuclear.getting_concentrated.desc": "ǝʇɐɹʇuǝɔuoɔ uǝboɹʇıu uıɐʇqo oʇ ǝɔɐuɹnɟ ʇsɐןq ɐ uı ǝʇɐɹʇıu ʇןǝɯS", + "advancement.createnuclear.full_anti_radiation_armor": "pǝʇɔǝʇoɹԀ ʎןןnℲ", + "advancement.createnuclear.full_anti_radiation_armor.desc": "uoıʇɐıpɐɹ ɯoɹɟ ɟןǝsɹnoʎ ʇɔǝʇoɹd ʎןןnɟ oʇ ɹoɯɹɐ uoıʇɐıpɐɹ-ıʇuɐ ɟo ʇǝs ןןnɟ ɐ ɹɐǝM", "advancement.createnuclear.graphene": "ǝuǝɥdɐɹ⅁", "advancement.createnuclear.graphene.desc": "ǝuǝɥdɐɹb ǝʇɐǝɹɔ oʇ ʇsnp ןɐoɔ ssǝɹԀ", "advancement.createnuclear.graphite_rod": "sǝuO ǝsoɥ⟘ ʇǝbɹoℲ ʇ,uoᗡ", "advancement.createnuclear.graphite_rod.desc": "spoɹ ǝʇıɥdɐɹb ǝʞɐɯ oʇ ɹǝʇɟɐɹɔ ןɐɔıuɐɥɔǝɯ ɐ uı sʇobuı ןǝǝʇs puɐ ǝuǝɥdɐɹb ǝuıqɯoƆ", - "advancement.createnuclear.lead_ingot": "ʇobuI pɐǝꞀ", + "advancement.createnuclear.lead_ingot": "ʇobuı pɐǝꞀ", "advancement.createnuclear.lead_ingot.desc": "ʇobuı pɐǝן ɐ uıɐʇqo oʇ pɐǝן ʍɐɹ ɐ ʇןǝɯS", - "advancement.createnuclear.no_time_to_die": "ǝıᗡ o⟘ ǝɯı⟘ oN", - "advancement.createnuclear.no_time_to_die.desc": "¡ WOOOᗺⱯʞ ǝɥʇ ǝɹoɟǝq ɹoʇɔɐǝɹ ǝɥʇ doʇS", "advancement.createnuclear.raw_lead": "pɐǝꞀ ʍɐᴚ", "advancement.createnuclear.raw_lead.desc": "ǝɹo pɐǝן buıuıɯ ʎq pɐǝן ʍɐɹ ǝɯos uıɐʇqO", - "advancement.createnuclear.raw_thorium": "ʍoן⅁ s,ɯnıɹoɥ⟘", - "advancement.createnuclear.raw_thorium.desc": "buıssǝɔoɹd ɹǝɥʇɹnɟ ɹoɟ ɯnıɹoɥʇ ʍɐɹ uıɐʇqo oʇ ǝɹo ɯnıɹoɥʇ ǝuıW", "advancement.createnuclear.raw_uranium": "ɹǝʍoԀ ʍɐᴚ ǝɥ⟘", "advancement.createnuclear.raw_uranium.desc": "buıssǝɔoɹd ɹǝɥʇɹnɟ ɹoɟ ɯnıuɐɹn ʍɐɹ uıɐʇqo oʇ ǝɹo ɯnıuɐɹn ǝuıW", "advancement.createnuclear.reactor_blueprint": "ɹǝʍoԀ ɹoℲ ʇuıɹdǝnןᗺ", @@ -51,34 +29,20 @@ "advancement.createnuclear.reactor_controller.desc": "ɹoʇɔɐǝɹ ɹnoʎ ǝʇɐןnbǝɹ puɐ ǝbɐuɐɯ oʇ ɹǝןןoɹʇuoɔ ɹoʇɔɐǝɹ ɐ ʇɟɐɹƆ", "advancement.createnuclear.reactor_cooler": "ɹoʇɔɐǝᴚ ǝɥ⟘ buıןooƆ", "advancement.createnuclear.reactor_cooler.desc": "ɹoʇɔɐǝɹ ɹnoʎ ןooɔ oʇ ɹǝןooɔ ɹoʇɔɐǝɹ ɐ ʇɟɐɹƆ", - "advancement.createnuclear.reactor_core": "ɹǝʍoԀ ɟO ǝɹoƆ", + "advancement.createnuclear.reactor_core": "ɹǝʍoԀ ɟo ǝɹoƆ", "advancement.createnuclear.reactor_core.desc": "ɹoʇɔɐǝɹ ɹɐǝןɔnu ɹnoʎ ɟo ʎbɹǝuǝ ןןnɟ ǝɥʇ ssǝuɹɐɥ oʇ ǝɹoɔ ɹoʇɔɐǝɹ ǝɥʇ ʇɟɐɹƆ", "advancement.createnuclear.reactor_frame": "ǝɯɐɹℲ ɹoʇɔɐǝᴚ", "advancement.createnuclear.reactor_frame.desc": "ɹoʇɔɐǝɹ ɹɐǝןɔnu ɹnoʎ pןınq oʇ ǝɯɐɹɟ ɹoʇɔɐǝɹ ɐ ʇɟɐɹƆ", + "advancement.createnuclear.reactor_input": "ɹoʇɔɐǝᴚ ǝɥ⟘ buıןǝnℲ", + "advancement.createnuclear.reactor_input.desc": "ɹoʇɔɐǝɹ ɹnoʎ oʇuı spoɹ ǝʇıɥdɐɹb puɐ ɯnıuɐɹn pǝǝɟ oʇ ʇnduı ɹoʇɔɐǝɹ ɐ ʇɟɐɹƆ", + "advancement.createnuclear.reactor_output": "ʇndʇnO ɹǝʍoԀ", + "advancement.createnuclear.reactor_output.desc": "ɹoʇɔɐǝɹ ɹnoʎ ʎq pǝɔnpoɹd ʎbɹǝuǝ ǝɥʇ ɹǝɟsuɐɹʇ oʇ ʇndʇno ɹoʇɔɐǝɹ ɐ ʇɟɐɹƆ", "advancement.createnuclear.reinforced_glass": "ssɐן⅁ pǝɔɹoɟuıǝᴚ", "advancement.createnuclear.reinforced_glass.desc": "ǝɯıʇ ʇsɹıɟ ǝɥʇ ɹoɟ ssɐןb pǝɔɹoɟuıǝɹ ǝɯos ʇɟɐɹƆ", "advancement.createnuclear.root": "ʎǝuɹnoſ ɹɐǝןɔnN ǝɥ⟘ buıʇɹɐʇS", "advancement.createnuclear.root.desc": "ɹǝpʍod ɯnıuɐɹn ʇsɹıɟ ɹnoʎ ʇǝb puɐ ʎbɹǝuǝ ɹɐǝןɔnu ɟo sɔısɐq ǝɥʇ ʞɔoןu∩", - "advancement.createnuclear.silence_the_core": "¡ ǝsıoN ɥɔnW oS sǝʞɐW ʇI", - "advancement.createnuclear.silence_the_core.desc": "ǝɯıʇ ʇsɹıɟ ǝɥʇ ɹoɟ ɯɹɐןɐ ǝɥʇ punos", "advancement.createnuclear.steel_ingot": "ʇobuI ןǝǝʇS", "advancement.createnuclear.steel_ingot.desc": "sʇobuı ןǝǝʇs ǝʇɐǝɹɔ oʇ sʇobuı uoɹı puɐ ʇsnp ןɐoɔ ǝuıqɯoƆ", - "advancement.createnuclear.t1": "Ɩ⟘ ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", - "advancement.createnuclear.t1.desc": "ɹoʇɔɐǝᴚ ɹɐǝןɔnN Ɩ ɹǝıʇ ɐ pןınᗺ", - "advancement.createnuclear.t2": "ᄅ⟘ ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", - "advancement.createnuclear.t2.desc": "ɹoʇɔɐǝᴚ ɹɐǝןɔnN ᄅ ɹǝıʇ ɐ pןınᗺ", - "advancement.createnuclear.t3": "Ɛ⟘ ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", - "advancement.createnuclear.t3.desc": "ɹoʇɔɐǝᴚ ɹɐǝןɔnN Ɛ ɹǝıʇ ɐ pןınᗺ", - "advancement.createnuclear.thorium_dust": "ɯnıɹoɥ⟘ pǝɹǝpʍoԀ", - "advancement.createnuclear.thorium_dust.desc": "buıuıɟǝɹ ɹǝɥʇɹnɟ ɹoɟ ǝɹɐdǝɹd oʇ ʇsnp oʇuı ɯnıɹoɥʇ ʍɐɹ ɥsnɹƆ", - "advancement.createnuclear.thorium_ingot": "ɯnıɹoɥ⟘ pǝʇɔɐdɯoƆ", - "advancement.createnuclear.thorium_ingot.desc": "ʇobuı ɯnıɹoɥʇ ɐ ǝʇɐǝɹɔ oʇ pınbıן ɯnıɹoɥʇ ʇɔɐdɯoƆ", - "advancement.createnuclear.thorium_liquid": "ɯnıɹoɥ⟘ uǝʇןoW", - "advancement.createnuclear.thorium_liquid.desc": "ʇsnp ɯnıɹoɥʇ buıxıɯ ʎq pınbıן ɯnıɹoɥʇ ǝɯos uıɐʇqO", - "advancement.createnuclear.thorium_rod": "ʞɔıʇS ǝnןᗺ Ɐ ʇɐɥM", - "advancement.createnuclear.thorium_rod.desc": "ǝɯıʇ ʇsɹıɟ ǝɥʇ ɹoɟ poɹ ɯnıɹoɥʇ ɐ ʇɟɐɹƆ", - "advancement.createnuclear.unlimited_power": "ɹǝʍoԀ pǝʇıɯıןu∩", - "advancement.createnuclear.unlimited_power.desc": "ɹoʇɔɐǝɹ ɹnoʎ ʎq pǝɔnpoɹd ʎbɹǝuǝ ǝɥʇ ʇɔɐɹʇxǝ oʇ ʇndʇnO ɹoʇɔɐǝᴚ ɐ ʇɟɐɹƆ", "advancement.createnuclear.uranium_liquid": "pınbıꞀ o⟘ pıןoS buıuɹn⟘", "advancement.createnuclear.uranium_liquid.desc": "ɹǝpʍod ɯnıuɐɹn buıxıɯ ʎq pınbıן ɯnıuɐɹn ǝɯos uıɐʇqO", "advancement.createnuclear.uranium_powder": "ɯnıuɐɹ∩ pǝɹǝpʍoԀ", @@ -87,8 +51,6 @@ "advancement.createnuclear.uranium_rod.desc": "ɹǝʇɟɐɹɔ ןɐɔıuɐɥɔǝɯ ɐ uı ǝʞɐɔʍoןןǝʎ pǝɥɔıɹuǝ buısn poɹ ɯnıuɐɹn ʇsɹıɟ ɹnoʎ ǝʇɐǝɹƆ", "advancement.createnuclear.yellowcake": "ssǝɔoɹԀ ǝʞɐɔʍoןןǝʎ ǝɥ⟘", "advancement.createnuclear.yellowcake.desc": "ǝʞɐɔʍoןןǝʎ ǝʇɐǝɹɔ oʇ pınbıן ɯnıuɐɹn ʇɔɐdɯoƆ", - "attribute.name.createnuclear.generic.irradiated_resistance": "ǝɔuɐʇsısǝᴚ uoıʇɐıpɐᴚ", - "biome.createnuclear.irradiated_land": "puɐꞀ pǝʇɐıpɐɹɹI", "block.createnuclear.autunite": "ǝʇıunʇnⱯ", "block.createnuclear.autunite_pillar": "ɹɐןןıԀ ǝʇıunʇnⱯ", "block.createnuclear.cut_autunite": "ǝʇıunʇnⱯ ʇnƆ", @@ -100,26 +62,20 @@ "block.createnuclear.cut_autunite_stairs": "sɹıɐʇS ǝʇıunʇnⱯ ʇnƆ", "block.createnuclear.cut_autunite_wall": "ןןɐM ǝʇıunʇnⱯ ʇnƆ", "block.createnuclear.deepslate_lead_ore": "ǝɹO pɐǝꞀ ǝʇɐןsdǝǝᗡ", - "block.createnuclear.deepslate_nitrate_ore": "ǝɹO ǝʇɐɹʇıN ǝʇɐןsdǝǝᗡ", - "block.createnuclear.deepslate_thorium_ore": "ǝɹO ɯnıɹoɥ⟘ ǝʇɐןsdǝǝᗡ", "block.createnuclear.deepslate_uranium_ore": "ǝɹO ɯnıuɐɹ∩ ǝʇɐןsdǝǝᗡ", "block.createnuclear.enriched_soul_soil": "ןıoS ןnoS pǝɥɔıɹuƎ", - "block.createnuclear.enriched_soul_soil.tooltip.summary": "˙‾ǝɹıɟ uǝǝɹb‾ ɐ ǝʞɐɯ oʇ ʇsnظ ɹo ǝɹıɟdɯɐɔ pǝɥɔıɹuǝ ‾ʇɟɐɹɔ‾ oʇ pǝsn ǝq uɐƆ ˙‾ǝɹıɟ pǝɥɔıɹuǝ‾ ǝʇɐǝɹɔ oɥʍ ʞɔoןq ‾ʎןuo‾ ǝɥ⟘", + "block.createnuclear.enriched_soul_soil.tooltip.summary": "˙‾ǝɹıɟ uǝǝɹb‾ ɐ ǝʞɐɯ oʇ ʇsnظ ɹo ǝɹıɟdɯɐɔ pǝɥɔıɹuǝ ‾ʇɟɐɹɔ‾ oʇ pǝsn ǝq uɐƆ˙‾ǝɹıɟ pǝɥɔıɹuǝ‾ ǝʇɐǝɹɔ oɥʍ ʞɔoןq ‾ʎןuo‾ ǝɥ⟘", "block.createnuclear.enriching_campfire": "ǝɹıɟdɯɐƆ buıɥɔıɹuƎ", "block.createnuclear.enriching_fire": "ǝɹıℲ buıɥɔıɹuƎ", "block.createnuclear.layered_autunite": "ǝʇıunʇnⱯ pǝɹǝʎɐꞀ", "block.createnuclear.lead_block": "ʞɔoןᗺ pɐǝꞀ", "block.createnuclear.lead_ore": "ǝɹO pɐǝꞀ", - "block.createnuclear.nitrate_ore": "ǝɹO ǝʇɐɹʇıN", - "block.createnuclear.nitrogen": "uǝboɹʇıN", "block.createnuclear.polished_cut_autunite": "ǝʇıunʇnⱯ ʇnƆ pǝɥsıןoԀ", "block.createnuclear.polished_cut_autunite_slab": "qɐןS ǝʇıunʇnⱯ ʇnƆ pǝɥsıןoԀ", "block.createnuclear.polished_cut_autunite_stairs": "sɹıɐʇS ǝʇıunʇnⱯ ʇnƆ pǝɥsıןoԀ", "block.createnuclear.polished_cut_autunite_wall": "ןןɐM ǝʇıunʇnⱯ ʇnƆ pǝɥsıןoԀ", "block.createnuclear.raw_lead_block": "ʞɔoןᗺ pɐǝꞀ ʍɐᴚ", - "block.createnuclear.raw_thorium_block": "ʞɔoןᗺ ɯnıɹoɥ⟘ ʍɐᴚ", "block.createnuclear.raw_uranium_block": "ʞɔoןᗺ ɯnıuɐɹ∩ ʍɐᴚ", - "block.createnuclear.reactor_alarm": "ɯɹɐןⱯ ɹoʇɔɐǝᴚ", "block.createnuclear.reactor_casing": "buısɐƆ ɹoʇɔɐǝᴚ", "block.createnuclear.reactor_casing.tooltip.summary": "‾ɹoʇɔɐǝɹ‾ ǝɥʇ pןınq oʇ pǝsn ‾ʞɔoןᗺ‾", "block.createnuclear.reactor_controller": "ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", @@ -130,289 +86,167 @@ "block.createnuclear.reactor_cooler.tooltip.summary": "‾ɹoʇɔɐǝɹ‾ ǝɥʇ pןınq oʇ pǝsn ‾ʞɔoןᗺ‾", "block.createnuclear.reactor_core": "ǝɹoƆ ɹoʇɔɐǝᴚ", "block.createnuclear.reactor_core.tooltip.summary": "‾ɹoʇɔɐǝɹ‾ ǝɥʇ pןınq oʇ pǝsn ‾ʞɔoןᗺ‾", - "block.createnuclear.reactor_fluid_input": "ʇnduI pınןℲ ɹoʇɔɐǝᴚ", - "block.createnuclear.reactor_fluid_input.tooltip.behaviour1": "˙‾buıʇɐǝɥɹǝʌo‾ pıoʌɐ puɐ ‾ɹoʇɔɐǝᴚ ǝɥ⟘‾ ɹǝʍod oʇ sǝıʇıʇuɐnb ǝbɹɐן uı ‾uǝboɹʇıN pınbıꞀ‾ ɹo ‾ɹǝʇɐM‾ ʇɹǝsuI", - "block.createnuclear.reactor_fluid_input.tooltip.condition1": "pǝןqɯǝssɐ sı ɹoʇɔɐǝɹ ǝɥʇ uǝɥM", - "block.createnuclear.reactor_fluid_input.tooltip.summary": "˙ɹoʇɔɐǝᴚ ǝɥʇ oʇuı ‾uǝboɹʇıN pınbıꞀ‾ ɹo ‾ɹǝʇɐM‾ ʇɹǝsuı oʇ pǝsn ǝq uɐɔ ʇɐɥʇ ‾ʞɔoןq‾ ɐ sı ‾ʇnduI pınןℲ ɹoʇɔɐǝᴚ ǝɥ⟘‾", "block.createnuclear.reactor_frame": "ǝɯɐɹℲ ɹoʇɔɐǝᴚ", "block.createnuclear.reactor_frame.tooltip.summary": "‾ɹoʇɔɐǝɹ‾ ǝɥʇ pןınq oʇ pǝsn ‾ʞɔoןᗺ‾", + "block.createnuclear.reactor_input": "ʇnduI ɹoʇɔɐǝᴚ", + "block.createnuclear.reactor_input.tooltip.behaviour1": " ‾ɹoʇɔɐǝɹ ǝɥʇ‾ ɹǝʍod oʇ sǝıʇıʇuɐnb ǝbɹɐן uı spoɹ ‾ǝuǝɥdɐɹb‾ puɐ ‾ɯnıuɐɹn‾ ʇɹǝsuI", + "block.createnuclear.reactor_input.tooltip.condition1": "pǝןqɯǝssɐ sı ɹoʇɔɐǝᴚ ǝɥʇ uǝɥM", + "block.createnuclear.reactor_input.tooltip.summary": "‾ɹoʇɔɐǝᴚ‾ ǝɥʇ oʇuı spoɹ ‾ǝuǝɥdɐɹ⅁‾ puɐ ‾ɯnıuɐɹ∩‾ ʇɹǝsuı oʇ pǝsn ǝq uɐɔ ʇɐɥʇ ‾ʞɔoןq‾ ɐ sı ‾ʇnduI ɹoʇɔɐǝᴚ ǝɥ⟘‾", "block.createnuclear.reactor_output": "ʇndʇnO ɹoʇɔɐǝᴚ", "block.createnuclear.reactor_output.tooltip.behaviour1": "‾ʇndʇno ɹoʇɔɐǝɹ‾ ǝɥʇ oʇ ‾ʇɟɐɥs‾ buıɥɔɐʇʇɐ ʎq ɹoʇɔɐǝɹ ǝɥʇ ʎq ǝɔnpoɹd ‾ʎbɹǝuǝ ǝɥʇ ʇɔɐɹʇxǝ‾ uɐɔ noʎ", "block.createnuclear.reactor_output.tooltip.condition1": "ʎbɹǝuǝ ǝɔnpoɹd ɹoʇɔɐǝɹ ǝɥʇ uǝɥM", "block.createnuclear.reactor_output.tooltip.summary": "‾ɹoʇɔɐǝᴚ‾ ǝɥʇ ʎq pǝʇɐɹǝuǝb ʎbɹǝuǝ ןɐɔıuɐɥɔǝɯ ǝɥʇ ʇɔɐɹʇxǝ oʇ pǝsn ǝq uɐɔ ʇɐɥʇ ‾ʞɔoןq‾ ɐ sı ‾ʇndʇnO ɹoʇɔɐǝᴚ ǝɥ⟘‾", - "block.createnuclear.reactor_rod_input": "ʇnduI poᴚ ɹoʇɔɐǝᴚ", - "block.createnuclear.reactor_rod_input.tooltip.behaviour1": "˙‾ɹoʇɔɐǝᴚ ǝɥ⟘‾ ɹǝʍod oʇ sǝıʇıʇuɐnb ǝbɹɐן uı spoɹ )‾ǝʇıɥdɐɹ⅁‾ ǝʞıן( ‾buıןooƆ‾ puɐ )‾ɯnıɹoɥ⟘‾ ɹo ‾ɯnıuɐɹ∩‾ ǝʞıן( ‾buıʇɐǝH‾ ʇɹǝsuI", - "block.createnuclear.reactor_rod_input.tooltip.condition1": "pǝןqɯǝssɐ sı ɹoʇɔɐǝɹ ǝɥʇ uǝɥM", - "block.createnuclear.reactor_rod_input.tooltip.summary": "˙ɹoʇɔɐǝᴚ ǝɥʇ oʇuı spoɹ ‾buıןooƆ‾ ɹo ‾buıʇɐǝH‾ ʇɹǝsuı oʇ pǝsn ǝq uɐɔ ʇɐɥʇ ‾ʞɔoןq‾ ɐ sı ‾ʇnduI poᴚ ɹoʇɔɐǝᴚ ǝɥ⟘‾", "block.createnuclear.reinforced_glass": "ssɐן⅁ pǝɔɹoɟuıǝᴚ", "block.createnuclear.small_autunite_brick": "ʞɔıɹᗺ ǝʇıunʇnⱯ ןןɐɯS", "block.createnuclear.small_autunite_brick_slab": "qɐןS ʞɔıɹᗺ ǝʇıunʇnⱯ ןןɐɯS", "block.createnuclear.small_autunite_brick_stairs": "sɹıɐʇS ʞɔıɹᗺ ǝʇıunʇnⱯ ןןɐɯS", "block.createnuclear.small_autunite_brick_wall": "ןןɐM ʞɔıɹᗺ ǝʇıunʇnⱯ ןןɐɯS", "block.createnuclear.steel_block": "ʞɔoןᗺ ןǝǝʇS", - "block.createnuclear.thorium": "ɯnıɹoɥ⟘", - "block.createnuclear.thorium_block": "ʞɔoןᗺ ɯnıɹoɥ⟘", - "block.createnuclear.thorium_ore": "ǝɹO ɯnıɹoɥ⟘", "block.createnuclear.uranium": "ɯnıuɐɹ∩", "block.createnuclear.uranium_ore": "ǝɹO ɯnıuɐɹ∩", "create.recipe.fan_enriched.fan": "ǝɹıℲ pǝɥɔıɹuƎ puıɥǝq uɐℲ", - "create.recipe.fan_snow_powder.fan": "ʍouS ɹǝpʍoԀ puıɥǝq uɐℲ", - "createnuclear.display_source.cooler": "ɹǝןooƆ ɹoʇɔɐǝᴚ", - "createnuclear.display_source.fuel": "ןǝnℲ ɹoʇɔɐǝᴚ", - "createnuclear.display_source.heat": "ʇɐǝH ɹoʇɔɐǝᴚ", - "createnuclear.display_source.heat.rotation": "WԀᴚ", - "createnuclear.display_source.heat.type": "ןǝʌǝן ʇɐǝH", - "createnuclear.display_source.heat.value": "Ὁ", - "createnuclear.display_source.liquid": "ןǝʌǝꞀ pınbıꞀ", - "createnuclear.display_source.liquid_level": "ןǝʌǝꞀ pınbıꞀ ɹoʇɔɐǝᴚ", - "createnuclear.display_source.reactor.active": "ƎΛI⟘ƆⱯ", - "createnuclear.display_source.reactor.cooler": " :ɹǝןooƆ", - "createnuclear.display_source.reactor.fluid": " :pınןℲ", - "createnuclear.display_source.reactor.for_reactor_status": "snʇɐʇs ɹoʇɔɐǝɹ ɹoɟ", - "createnuclear.display_source.reactor.fuel": " :ןǝnℲ", - "createnuclear.display_source.reactor.heat": " :ʇɐǝH", - "createnuclear.display_source.reactor.idle": "ƎꞀᗡI", - "createnuclear.display_source.reactor.mode.gauge": "sǝbnɐ⅁", - "createnuclear.display_source.reactor.mode.normal": "ןɐɯɹoN", - "createnuclear.display_source.reactor.mode.percent": "sǝbɐʇuǝɔɹǝԀ", - "createnuclear.display_source.reactor.mode.value": "sǝnןɐΛ", - "createnuclear.display_source.reactor.no_controller": "punoɟ ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ oN", - "createnuclear.display_source.reactor.not_enough_space": " ǝɔɐds ɥbnouǝ ʇoN", - "createnuclear.display_source.reactor.size": " :ɹǝı⟘", - "createnuclear.display_source.reactor.size.large": "ǝbɹɐꞀ", - "createnuclear.display_source.reactor.size.medium": "ɯnıpǝW", - "createnuclear.display_source.reactor.size.small": "ןןɐɯS", - "createnuclear.display_source.reactor.status": " :snʇɐʇS", - "createnuclear.display_source.reactor_controller_count_rod.cooled": "pǝןooƆ", - "createnuclear.display_source.reactor_controller_count_rod.fuel": "ןǝnℲ", - "createnuclear.display_source.reactor_count_rod": "uɹǝʇʇɐԀ uı poᴚ ʇunoƆ", - "createnuclear.display_source.reactor_summary": "ʎɹɐɯɯnS ɹoʇɔɐǝᴚ", - "createnuclear.display_source.reactor_summary.active": "ƎΛI⟘ƆⱯ", - "createnuclear.display_source.reactor_summary.coolant": ":ʇuɐןooƆ", - "createnuclear.display_source.reactor_summary.fuel": ":spoᴚ", - "createnuclear.display_source.reactor_summary.idle": "ƎꞀᗡI", - "createnuclear.display_source.reactor_summary.no_controller": "punoɟ ʇou ɹoʇɔɐǝᴚ", - "createnuclear.display_source.reactor_summary.status": ":snʇɐʇS", - "createnuclear.display_source.reactor_summary.temperature": ":dɯǝ⟘", - "createnuclear.display_source.size": "ǝzıS ɹoʇɔɐǝᴚ", "createnuclear.enriched.fan.recipe": "buıɥɔıɹuƎ ʞןnᗺ", - "createnuclear.generic.unit.count.rod": "poᴚ %s sʇunoƆ", - "createnuclear.generic.unit.countCooled.rod": "%d :poᴚ pǝןooƆ ʇunoƆ", - "createnuclear.generic.unit.countFuel.rod": "%d :poᴚ ןǝnℲ ʇunoƆ", - "createnuclear.generic.unit.fluid.value": "ᗺɯ", "createnuclear.generic.unit.heat": "Ὁ", - "createnuclear.generic.unit.heat.rotation": "WԀᴚ", - "createnuclear.generic.unit.heat.type": "%s :ןǝʌǝꞀ ʇɐǝH", - "createnuclear.generic.unit.heat.value": "Ὁ", - "createnuclear.generic.unit.liquid": "ԀIM", - "createnuclear.generic.unit.seconds": "s", "createnuclear.gui.reactor_controller.info_header.title": "ǝnןɐʌ ʇɐǝH", - "createnuclear.notification.reactor.assembled": "pǝןqɯǝssɐ uǝǝq sɐɥ ɹoʇɔɐǝᴚ", - "createnuclear.notification.reactor.critical_failure": "Ǝᴚ∩ꞀIⱯℲ ꞀⱯƆI⟘IᴚƆ", - "createnuclear.notification.reactor.destroyed": "ᗡƎʎOᴚ⟘SƎᗡ ᴚO⟘ƆⱯƎᴚ", - "createnuclear.notification.reactor.disassembled": "pǝןqɯǝssɐsıp uǝǝq sɐɥ ɹoʇɔɐǝᴚ", - "createnuclear.notification.reactor.imminent_explosion": "NOISOꞀԀXƎ ⟘NƎNIWWI", - "createnuclear.notification.reactor.meltdown_finished": "pǝʇǝןdɯoɔ uʍopʇןǝɯ ןɐɔıʇıɹƆ", - "createnuclear.notification.reactor.meltdown_in": " NI NMOᗡ⟘ꞀƎW ƎᴚOƆ", - "createnuclear.notification.reactor.overheating": "⅁NI⟘ⱯƎHᴚƎΛO ƎᴚOƆ :⅁NINᴚⱯM", - "createnuclear.notification.reactor.stabilized": "ᗡƎZIꞀIᗺⱯ⟘S ƎᴚOƆ", - "createnuclear.ponder.reactor_io_placement.header": "ʇuǝɯǝɔɐןԀ & uoıʇɔunℲ :O/I ɹoʇɔɐǝᴚ", - "createnuclear.ponder.reactor_io_placement.text_1": "˙ʎʇıןıqɐʇs ɹoɟ poᴚ buıןooƆ ǝuo puɐ 'ɹoʇɔɐǝɹ ǝɥʇ ʇɐǝɥ oʇ )ןǝnɟ( poᴚ buıʇɐǝH ǝuo pǝǝu ǝM ˙spoᴚ buıןooƆ ɹo buıʇɐǝH sǝɹoʇS :ʇnduI poᴚ", - "createnuclear.ponder.reactor_io_placement.text_2": "˙suoısoןdxǝ ʇuǝʌǝɹd oʇ poᴚ buıןooƆ ǝɥʇ ɹoɟ ǝuo puɐ poᴚ buıʇɐǝH ǝɥʇ ɹoɟ ǝuO ¡sʇnduı oʍʇ ʇsɐǝן ʇɐ pǝǝu ǝʍ ʎɥʍ sı sıɥ⟘ :ʇnduI poᴚ puoɔǝS", - "createnuclear.ponder.reactor_io_placement.text_3": "˙ǝpoןdxǝ ʇou sǝop ʇı ǝɹnsuǝ puɐ ɹoʇɔɐǝɹ ǝɥʇ ןooɔ oʇ pǝɹınbǝɹ osןɐ sı pınןℲ :ʇnduI pınןℲ", - "createnuclear.ponder.reactor_io_placement.text_4": "˙buıpoןdxǝ sʞsıɹ puɐ ǝןqɐʇsun sǝɯoɔǝq ɹoʇɔɐǝɹ ǝɥʇ uǝɥʍ punos ɐ sʇıɯƎ :)ןɐuoıʇdO( ɯɹɐןⱯ", - "createnuclear.ponder.reactor_io_placement.text_5": "˙ɯǝɥʇ uǝǝʍʇǝq ʎbɹǝuǝ ןɐʇoʇ ǝɥʇ ɥɔʇɐdsıp oʇ sʇndʇno ǝןdıʇןnɯ ǝɔɐןd uɐɔ noʎ ˙ʎbɹǝuǝ pǝʇɐɹǝuǝb ʇɔɐɹʇxǝ oʇ ʎɹɐssǝɔǝN :ʇndʇnO", - "createnuclear.ponder.reactor_io_placement.text_6": "˙ǝbpǝ uɐ uo ʇou sı ʇı sɐ buoן sɐ 'buısɐƆ ɹoʇɔɐǝᴚ ʎNⱯ ǝɔɐןdǝɹ uɐɔ sʞɔoןq ǝsǝɥ⟘", - "createnuclear.ponder.reactor_io_placement.text_7": "˙ǝɔɐɟɹns ʇɐןɟ ɹǝɥʇo ʎuɐ ɹo ɟooɹ ǝɥʇ uo ɹǝɥʇǝboʇ pǝdnoɹb ǝq uɐɔ ʎǝɥ⟘", - "createnuclear.ponder.reactor_t1.header": "Ɩ⟘ ɹoʇɔɐǝᴚ", - "createnuclear.ponder.reactor_t1.text_1": "Ɩ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_10": "˙)uoıʇɔunɟ & ʇuǝɯǝɔɐןd( sʞɔoןq ɯɹɐןⱯ puɐ O/I ɹoɟ ㄣ ǝbɐd ʞɔǝɥƆ :ǝʇoN", - "createnuclear.ponder.reactor_t1.text_2": "ᄅ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_3": "Ɛ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_4": "ㄣ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_5": "ʇı ʇɹɐʇs oʇ sǝob ʇuıɹdǝnןq ǝɥʇ ǝɹǝɥʍ ǝɔɐןd ǝɥʇ puɐ 'ɹoʇɔɐǝɹ ǝɥʇ ɟo uıɐɹq :ɹǝןןoɹʇuoƆ", - "createnuclear.ponder.reactor_t1.text_6": "ϛ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_7": "9 ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_8": "ㄥ ɹooןℲ", - "createnuclear.ponder.reactor_t1.text_9": "puɐɥ uı ʇuıɹdǝnןq ǝɥʇ ɥʇıʍ ɹǝןןoɹʇuoɔ ǝɥʇ ʞɔıןɔ ʇɥbıɹ uǝɥʇ 'uɹǝʇʇɐd ǝɥʇ oʇ buıpuodsǝɹɹoɔ spoɹ puɐ pınbıן pǝǝu ןןıʍ noʎ ɹoʇɔɐǝɹ ǝɥʇ ʇɹɐʇs o⟘", - "createnuclear.ponder.reactor_t2.header": "ᄅ⟘ ɹoʇɔɐǝᴚ", - "createnuclear.ponder.reactor_t2.text_1": "Ɩ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_10": "6 ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_11": "puɐɥ uı ʇuıɹdǝnןq ǝɥʇ ɥʇıʍ ɹǝןןoɹʇuoɔ ǝɥʇ ʞɔıןɔ ʇɥbıɹ uǝɥʇ 'uɹǝʇʇɐd ǝɥʇ oʇ buıpuodsǝɹɹoɔ spoɹ puɐ pınbıן pǝǝu ןןıʍ noʎ ɹoʇɔɐǝɹ ǝɥʇ ʇɹɐʇs o⟘", - "createnuclear.ponder.reactor_t2.text_12": "˙)uoıʇɔunɟ & ʇuǝɯǝɔɐןd( sʞɔoןq ɯɹɐןⱯ puɐ O/I ɹoɟ ㄣ ǝbɐd ʞɔǝɥƆ :ǝʇoN", - "createnuclear.ponder.reactor_t2.text_2": "ᄅ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_3": "Ɛ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_4": "ㄣ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_5": "ϛ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_6": "ʇı ʇɹɐʇs oʇ sǝob ʇuıɹdǝnןq ǝɥʇ ǝɹǝɥʍ ǝɔɐןd ǝɥʇ puɐ 'ɹoʇɔɐǝɹ ǝɥʇ ɟo uıɐɹq :ɹǝןןoɹʇuoƆ", - "createnuclear.ponder.reactor_t2.text_7": "9 ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_8": "ㄥ ɹooןℲ", - "createnuclear.ponder.reactor_t2.text_9": "8 ɹooןℲ", - "createnuclear.ponder.reactor_t3.header": "Ɛ⟘ ɹoʇɔɐǝᴚ", - "createnuclear.ponder.reactor_t3.text_1": "Ɩ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_10": "6 ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_11": "0Ɩ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_12": "ƖƖ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_13": "puɐɥ uı ʇuıɹdǝnןq ǝɥʇ ɥʇıʍ ɹǝןןoɹʇuoɔ ǝɥʇ ʞɔıןɔ ʇɥbıɹ uǝɥʇ 'uɹǝʇʇɐd ǝɥʇ oʇ buıpuodsǝɹɹoɔ spoɹ puɐ pınbıן pǝǝu ןןıʍ noʎ ɹoʇɔɐǝɹ ǝɥʇ ʇɹɐʇs o⟘", - "createnuclear.ponder.reactor_t3.text_14": "˙)uoıʇɔunɟ & ʇuǝɯǝɔɐןd( sʞɔoןq ɯɹɐןⱯ puɐ O/I ɹoɟ ㄣ ǝbɐd ʞɔǝɥƆ :ǝʇoN", - "createnuclear.ponder.reactor_t3.text_2": "ᄅ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_3": "Ɛ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_4": "ㄣ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_5": "ϛ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_6": "9 ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_7": "ʇı ʇɹɐʇs oʇ sǝob ʇuıɹdǝnןq ǝɥʇ ǝɹǝɥʍ ǝɔɐןd ǝɥʇ puɐ 'ɹoʇɔɐǝɹ ǝɥʇ ɟo uıɐɹq :ɹǝןןoɹʇuoƆ", - "createnuclear.ponder.reactor_t3.text_8": "ㄥ ɹooןℲ", - "createnuclear.ponder.reactor_t3.text_9": "8 ɹooןℲ", - "createnuclear.reactor.debug.label.alarm": "ɯɹɐןⱯ", - "createnuclear.reactor.debug.label.fluid_input": "ʇnduI pınןℲ", - "createnuclear.reactor.debug.label.input": "ʇnduI", - "createnuclear.reactor.debug.label.output": "ʇndʇnO", - "createnuclear.reactor.debug.registered_position": "%s @ pǝɹǝʇsıbǝɹ ", - "createnuclear.reactor.debug.summary": "pıןɐʌ %s 'pǝɹǝʇsıbǝɹ %s :%s", - "createnuclear.reactor.debug.title": "--- sɔıʇsoubɐıp ɹoʇɔɐǝᴚ ---", - "createnuclear.reactor.debug.valid_position": "%s @ pıןɐʌ ", - "createnuclear.snow_powder.fan.recipe": "uɐɟ ɔıuǝboʎɹƆ", - "createnuclear.subtitle.alarm/alarm": "dooꞀ ɯɹɐןⱯ ɹoʇɔɐǝᴚ", - "createnuclear.subtitle.alarm/reactor_alarm": "ɯɹɐןⱯ ɹoʇɔɐǝᴚ", - "createnuclear.subtitle.biomes/wasteland": "puɐןǝʇsɐM", - "createnuclear.subtitle.explosion/large_nuclear_explosion": "uoısoןdxƎ ɹɐǝןɔnN ǝbɹɐꞀ", - "createnuclear.subtitle.explosion/main": "uıɐW uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.explosion/nuclear_explosion": "uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.explosion/nuclear_explosion_rumble": "ǝןqɯnᴚ uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.explosion/ringing": "buıbuıᴚ uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.explosion/rumble": "ǝןqɯnᴚ uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.explosion/shockwave": "ǝʌɐʍʞɔoɥS uoısoןdxƎ ɹɐǝןɔnN", - "createnuclear.subtitle.geiger/high": "ɥbıH ɹǝbıǝ⅁", - "createnuclear.subtitle.geiger/low": "ʍoꞀ ɹǝbıǝ⅁", - "createnuclear.subtitle.geiger/medium": "ɯnıpǝW ɹǝbıǝ⅁", - "createnuclear.subtitle.reacteur/activation": "uoıʇɐʌıʇɔⱯ ɹoʇɔɐǝᴚ", - "createnuclear.subtitle.reacteur/assemble_deassemble/motor_assemble": "ǝןqɯǝssⱯ ɹoʇoW", - "createnuclear.subtitle.reacteur/assemble_deassemble/motor_disassemble": "ǝןqɯǝssɐsıᗡ ɹoʇoW", - "createnuclear.subtitle.reacteur/running": "buıuunᴚ ɹoʇɔɐǝᴚ", - "createnuclear.subtitle.reacteur/shut_off": "ɟɟO ʇnɥS ɹoʇɔɐǝᴚ", - "createnuclear.tooltip.baseRodHeat": "Ὁ %d :ʇɐǝH poᴚ ǝsɐᗺ", - "createnuclear.tooltip.biome_irradiation_extractor.biome_restore": "%d / %d :suoıʇɐɹoʇsǝᴚ", - "createnuclear.tooltip.fluid": " %s :pınןℲ", - "createnuclear.tooltip.fluid.amount": "qɯ %d", - "createnuclear.tooltip.fluid.none": " ǝuoN :pınןℲ", + "createnuclear.ponder.reactor.header": "ɹoʇɔɐǝɹ ǝɥʇ ɟo uoıʇɔnɹʇsuoƆ", + "createnuclear.ponder.reactor.text_1": "Ɩ ɹooןℲ", + "createnuclear.ponder.reactor.text_10": "ㄥ ɹooןℲ", + "createnuclear.ponder.reactor.text_2": "˙ɹoʇɔɐǝɹ ǝɥʇ ʎq pǝʇɐɹǝuǝb )∩S( ʎbɹǝuǝ ǝɥʇ sʇndʇno ʇɐɥʇ ʞɔoןq ǝɥʇ sı sıɥ⟘ :ʇndʇnO ɹoʇɔɐǝᴚ", + "createnuclear.ponder.reactor.text_3": "ᄅ ɹooןℲ", + "createnuclear.ponder.reactor.text_4": "Ɛ ɹooןℲ", + "createnuclear.ponder.reactor.text_5": "ㄣ ɹooןℲ", + "createnuclear.ponder.reactor.text_6": "˙ɹoʇɔɐǝɹ ǝɥʇ ǝʇɐɹǝdo oʇ spoɹ ǝʇıɥdɐɹb puɐ ɯnıuɐɹn sǝɹoʇs ʇɐɥʇ ʞɔoןq Ɐ :ʇnduI ɹoʇɔɐǝᴚ", + "createnuclear.ponder.reactor.text_7": "˙ɹǝʍod ǝʇɐɹǝuǝb oʇ pǝpǝǝu suoıʇɐןnɔןɐɔ ǝɥʇ ןןɐ sǝןpuɐɥ ʇı ؛ɹoʇɔɐǝɹ ǝɥʇ ǝʇɐɹǝdo oʇ ʞɔoןq ʇuɐʇɹodɯı ʇsoɯ ǝɥ⟘ :ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", + "createnuclear.ponder.reactor.text_8": "ϛ ɹooןℲ", + "createnuclear.ponder.reactor.text_9": "9 ɹooןℲ", + "createnuclear.ponder.reactor_blueprint.header": "uoıʇɐʌıʇɔⱯ ɹǝןןoɹʇuoƆ", + "createnuclear.ponder.reactor_blueprint.text_1": "˙sןǝpoɯ ɔıɟıɔǝds oʇ buıpɹoɔɔɐ pǝɹnbıɟuoɔ ǝq oʇ ɹoʇɔɐǝɹ ǝɥʇ sʍoןןɐ ʇı ؛ʇuǝɯǝןǝ ʇuɐʇɹodɯı ʇsoɯ ǝɥʇ :ʇuıɹdǝnןᗺ ɹoʇɔɐǝᴚ", "createnuclear.tooltip.heatLevel": "ןǝʌǝꞀ ʇɐǝH", "createnuclear.tooltip.heatLevel.caution": "uoıʇnɐƆ", "createnuclear.tooltip.heatLevel.danger": "ɹǝbuɐᗡ", "createnuclear.tooltip.heatLevel.none": "ǝuoN", "createnuclear.tooltip.heatLevel.safety": "ʎʇǝɟɐS", "createnuclear.tooltip.heatLevel.warning": "buıuɹɐM", - "createnuclear.tooltip.item.cooled.rod": " :poᴚ ɹǝןooƆ", - "createnuclear.tooltip.item.empty.rod": " :sɯǝʇI ʇnduI", - "createnuclear.tooltip.item.fuel.rod": " :poᴚ ןǝnℲ", + "createnuclear.tooltip.item.graphene.rod": " :poᴚ ǝʇıɥdɐɹ⅁", "createnuclear.tooltip.item.unknown.rod": " :uʍouʞu∩", - "createnuclear.tooltip.proximityRodHeat": "Ὁ ɟᄅ˙% :ʇɐǝH poᴚ ʎʇıɯıxoɹԀ", - "createnuclear.tooltip.ratio": "%d :oıʇɐɹ ɹoɟ ǝnןɐΛ poᴚ", - "createnuclear.tooltip.rodTimer": "ʞɔıʇ %d :uoıʇɐɹnᗡ poᴚ", - "createnuclear.tooltip.statRod": ":uɹǝʇʇɐԀ ʇɐʇS poᴚ", - "createnuclear.tooltip.typeRod": "%s :ǝdʎ⟘ poᴚ", - "death.attack.createnuclear.fan_radiation": "ʇsɐןq uoıʇɐıpɐɹ ɯoɹɟ pǝıp %1$s", - "death.attack.createnuclear.radiation": "uoıʇɐıpɐɹ ɯoɹɟ pǝıp %1$s", - "effect.createnuclear.iodine": "ǝuıpoI", + "createnuclear.tooltip.item.uranium.rod": " :poᴚ ɯnıuɐɹ∩", "effect.createnuclear.radiation": "uoıʇɐıpɐᴚ", "emi.category.createnuclear.fan_enriched": "buıɥɔıɹuƎ ʞןnᗺ", - "emi.category.createnuclear.snow_powder": "uɐɟ ɔıuǝboʎɹƆ", "entity.createnuclear.irradiated_cat": "ʇɐƆ pǝʇɐıpɐɹɹI", "entity.createnuclear.irradiated_chicken": "uǝʞɔıɥƆ pǝʇɐıpɐɹɹI", - "entity.createnuclear.irradiated_cow": "ʍoƆ pǝʇɐıpɐɹɹI", "entity.createnuclear.irradiated_wolf": "ɟןoM pǝʇɐıpɐɹɹI", - "entity.createnuclear.nuclear_explosion": "uoısoןdxƎ ɹɐǝןɔnN", - "fluid.createnuclear.nitrogen": "uǝboɹʇıN pınbıꞀ", - "fluid.createnuclear.thorium": "ɯnıɹoɥ⟘ pınbıꞀ", "fluid.createnuclear.uranium": "ɯnıuɐɹ∩ pınbıꞀ", "gui.createnuclear.reactor_controller.title": "ɹǝןןoɹʇuoƆ ɹoʇɔɐǝᴚ", "gui.createnuclear.reactor_input.title": "ǝbɐɹoʇS ʇnduI ɹoʇɔɐǝᴚ", - "irradiated.taming.wip": "ssǝɹboɹd uı ʞɹoʍ ɐ ןןıʇs ǝɹɐ sqoɯ pǝʇɐıpɐɹɹı - ʇǝʎ pǝɯɐʇ ǝq ʇouuɐɔ ǝɹnʇɐǝɹɔ sıɥ⟘", - "item.createnuclear.biome_irradiation_extractor": "ɹoʇɔɐɹʇxƎ uoıʇɐıpɐɹɹI ǝɯoıᗺ", - "item.createnuclear.biome_irradiation_extractor.tooltip.summary": "˙sǝʇɐpdn ǝɹnʇnɟ uı ǝbuɐɥɔ ʇɥbıɯ puɐ ‾ɐʇǝq‾ uı ʎןʇuǝɹɹnɔ sı ɯǝʇı sıɥ⟘", + "item.createnuclear.anti_radiation_boots": "sʇooᗺ uoıʇɐıpɐᴚ ıʇuⱯ", + "item.createnuclear.black_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ʞɔɐןᗺ", + "item.createnuclear.black_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ʞɔɐןᗺ", + "item.createnuclear.black_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ʞɔɐןᗺ", "item.createnuclear.black_cloth": "ɥʇoןƆ ʞɔɐןᗺ", + "item.createnuclear.blue_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ", + "item.createnuclear.blue_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ", + "item.createnuclear.blue_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ", "item.createnuclear.blue_cloth": "ɥʇoןƆ ǝnןᗺ", + "item.createnuclear.brown_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ uʍoɹᗺ", + "item.createnuclear.brown_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ uʍoɹᗺ", + "item.createnuclear.brown_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ uʍoɹᗺ", "item.createnuclear.brown_cloth": "ɥʇoןƆ uʍoɹᗺ", "item.createnuclear.cat_irradiated_spawn_egg": "bbƎ uʍɐdS ʇɐƆ pǝʇɐıpɐɹɹI", "item.createnuclear.chicken_irradiated_spawn_egg": "bbƎ uʍɐdS uǝʞɔıɥƆ pǝʇɐıpɐɹɹI", "item.createnuclear.coal_dust": "ʇsnᗡ ןɐoƆ", - "item.createnuclear.cooled_nitrogen_concentrate": "ǝʇɐɹʇuǝɔuoƆ uǝboɹʇıN pǝןooƆ", + "item.createnuclear.cyan_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ uɐʎƆ", + "item.createnuclear.cyan_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ uɐʎƆ", + "item.createnuclear.cyan_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ uɐʎƆ", "item.createnuclear.cyan_cloth": "ɥʇoןƆ uɐʎƆ", - "item.createnuclear.default_anti_radiation_boots": "sʇooᗺ uoıʇɐıpɐᴚ ıʇuⱯ", - "item.createnuclear.default_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ", - "item.createnuclear.default_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ", - "item.createnuclear.default_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ", "item.createnuclear.enriched_yellowcake": "ǝʞɐɔʍoןןǝʎ pǝɥɔıɹuƎ", "item.createnuclear.graphene": "ǝuǝɥdɐɹ⅁", "item.createnuclear.graphite_rod": "poᴚ ǝʇıɥdɐɹ⅁", - "item.createnuclear.graphite_rod.tooltip.summary": "˙ʇı ǝʇɐɹǝdo oʇ ‾ʇnduı poɹ ɹoʇɔɐǝɹ‾ ǝɥʇ uı pǝsn ǝq oʇ ‾poᴚ‾", + "item.createnuclear.graphite_rod.tooltip.summary": "˙ʇı ǝʇɐɹǝdo oʇ ‾ʇnduı ɹoʇɔɐǝɹ‾ ǝɥʇ uı pǝsn ǝq oʇ ‾ʞɔıʇS‾", + "item.createnuclear.gray_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁", + "item.createnuclear.gray_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁", + "item.createnuclear.gray_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁", "item.createnuclear.gray_cloth": "ɥʇoןƆ ʎɐɹ⅁", + "item.createnuclear.green_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ uǝǝɹ⅁", + "item.createnuclear.green_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ uǝǝɹ⅁", + "item.createnuclear.green_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ uǝǝɹ⅁", "item.createnuclear.green_cloth": "ɥʇoןƆ uǝǝɹ⅁", "item.createnuclear.lead_ingot": "ʇobuI pɐǝꞀ", "item.createnuclear.lead_nugget": "ʇǝbbnN pɐǝꞀ", + "item.createnuclear.light_blue_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ ʇɥbıꞀ", + "item.createnuclear.light_blue_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ ʇɥbıꞀ", + "item.createnuclear.light_blue_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝnןᗺ ʇɥbıꞀ", "item.createnuclear.light_blue_cloth": "ɥʇoןƆ ǝnןᗺ ʇɥbıꞀ", + "item.createnuclear.light_gray_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁ ʇɥbıꞀ", + "item.createnuclear.light_gray_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁ ʇɥbıꞀ", + "item.createnuclear.light_gray_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ʎɐɹ⅁ ʇɥbıꞀ", "item.createnuclear.light_gray_cloth": "ɥʇoןƆ ʎɐɹ⅁ ʇɥbıꞀ", + "item.createnuclear.lime_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝɯıꞀ", + "item.createnuclear.lime_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝɯıꞀ", + "item.createnuclear.lime_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝɯıꞀ", "item.createnuclear.lime_cloth": "ɥʇoןƆ ǝɯıꞀ", + "item.createnuclear.magenta_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ɐʇuǝbɐW", + "item.createnuclear.magenta_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ɐʇuǝbɐW", + "item.createnuclear.magenta_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ɐʇuǝbɐW", "item.createnuclear.magenta_cloth": "ɥʇoןƆ ɐʇuǝbɐW", - "item.createnuclear.nitrate": "ǝʇɐɹʇıN", - "item.createnuclear.nitrogen_bucket": "ʇǝʞɔnᗺ uǝboɹʇıN", - "item.createnuclear.nitrogen_concentrate": "ǝʇɐɹʇuǝɔuoƆ uǝboɹʇıN", + "item.createnuclear.orange_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝbuɐɹO", + "item.createnuclear.orange_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝbuɐɹO", + "item.createnuclear.orange_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝbuɐɹO", "item.createnuclear.orange_cloth": "ɥʇoןƆ ǝbuɐɹO", + "item.createnuclear.pink_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ʞuıԀ", + "item.createnuclear.pink_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ʞuıԀ", + "item.createnuclear.pink_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ʞuıԀ", "item.createnuclear.pink_cloth": "ɥʇoןƆ ʞuıԀ", + "item.createnuclear.purple_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝןdɹnԀ", + "item.createnuclear.purple_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝןdɹnԀ", + "item.createnuclear.purple_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝןdɹnԀ", "item.createnuclear.purple_cloth": "ɥʇoןƆ ǝןdɹnԀ", "item.createnuclear.raw_lead": "pɐǝꞀ ʍɐᴚ", - "item.createnuclear.raw_thorium": "ɯnıɹoɥ⟘ ʍɐᴚ", "item.createnuclear.raw_uranium": "ɯnıuɐɹ∩ ʍɐᴚ", - "item.createnuclear.reactor_blueprint.chat_info": ":uoıʇɐʇuǝɯnɔop ǝɥʇ uǝdo oʇ ʞuıן ǝɥʇ ʍoןןoℲ", - "item.createnuclear.reactor_blueprint.tooltip": "˙ʇnoʎɐן ɹoıɹǝʇuı s,ɹoʇɔɐǝɹ ǝɥʇ ǝzıןɐnsıʌ puɐ ubısǝp oʇ pǝs∩", - "item.createnuclear.reactor_blueprint.tooltip_hint": "˙ʞuıן ıʞıM ǝɥʇ ʇǝb oʇ puɐɥ uı ʇuıɹdǝnןq ǝɥʇ ɥʇıʍ oʇㄥ§ ʞɔıןƆ ʇɥbıᴚ + ʇɟıɥSǝ§ ssǝɹԀㄥ§", - "item.createnuclear.reactor_blueprint.wiki_link": "]ıʞıM ןɐıɔıɟɟO uǝdO[", "item.createnuclear.reactor_blueprint_item": "ʇuıɹdǝnןᗺ ɹoʇɔɐǝᴚ", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour1": "˙ʇı ןןıɟ oʇ ʞɔıןɔ ‾ʇɥbıᴚ‾", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour2": "˙ʇı uǝdo oʇ ɹǝןןoɹʇuoɔ ɹoʇɔɐǝɹ ǝɥʇ uo ʞɔıןɔ ‾ʇɥbıᴚ‾", - "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "spoɹ buıʇɐǝɥ puɐ buıןooɔ ɥʇıʍ pǝןןıℲ", + "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "spoɹ ɯnıuɐɹn puɐ ǝʇıɥdɐɹb ɥʇıʍ pǝןןıℲ", "item.createnuclear.reactor_blueprint_item.tooltip.condition2": "pǝןqɯǝssɐ ǝq ʇsnɯ ɹoʇɔɐǝɹ ǝɥ⟘", "item.createnuclear.reactor_blueprint_item.tooltip.summary": "˙uɹǝʇʇɐd uʍo ɹnoʎ ǝɹnbıɟuoɔ oʇ noʎ sʍoןןɐ ʇI", + "item.createnuclear.red_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ pǝᴚ", + "item.createnuclear.red_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ pǝᴚ", + "item.createnuclear.red_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ pǝᴚ", "item.createnuclear.red_cloth": "ɥʇoןƆ pǝᴚ", - "item.createnuclear.reinforced_glass_bottle": "ǝןʇʇoᗺ ssɐן⅁ pǝɔɹoɟuıǝᴚ", "item.createnuclear.steel_ingot": "ʇobuI ןǝǝʇS", "item.createnuclear.steel_nugget": "ʇǝbbnN ןǝǝʇS", - "item.createnuclear.thorium_bucket": "ʇǝʞɔnᗺ ɯnıɹoɥ⟘", - "item.createnuclear.thorium_dust": "ʇsnᗡ ɯnıɹoɥ⟘", - "item.createnuclear.thorium_ingot": "ʇobuI ɯnıɹoɥ⟘", - "item.createnuclear.thorium_nugget": "ʇǝbbnN ɯnıɹoɥ⟘", - "item.createnuclear.thorium_rod": "poᴚ ɯnıɹoɥ⟘", - "item.createnuclear.thorium_rod.tooltip.summary": "˙ʇı ǝʇɐɹǝdo oʇ ‾ʇnduı poɹ ɹoʇɔɐǝɹ‾ ǝɥʇ uı pǝsn ǝq oʇ ‾poᴚ‾", "item.createnuclear.uranium_bucket": "ʇǝʞɔnᗺ ɯnıuɐɹ∩", "item.createnuclear.uranium_powder": "ɹǝpʍoԀ ɯnıuɐɹ∩", "item.createnuclear.uranium_rod": "poᴚ ɯnıuɐɹ∩", - "item.createnuclear.uranium_rod.tooltip.summary": "˙ʇı ǝʇɐɹǝdo oʇ ‾ʇnduı poɹ ɹoʇɔɐǝɹ‾ ǝɥʇ uı pǝsn ǝq oʇ ‾poᴚ‾", + "item.createnuclear.uranium_rod.tooltip.summary": "˙ʇı ǝʇɐɹǝdo oʇ ‾ʇnduı ɹoʇɔɐǝɹ‾ ǝɥʇ uı pǝsn ǝq oʇ ‾ʞɔıʇS‾", + "item.createnuclear.white_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ǝʇıɥM", + "item.createnuclear.white_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ǝʇıɥM", + "item.createnuclear.white_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ǝʇıɥM", "item.createnuclear.white_cloth": "ɥʇoןƆ ǝʇıɥM", "item.createnuclear.wolf_irradiated_spawn_egg": "bbƎ uʍɐdS ɟןoM pǝʇɐıpɐɹɹI", + "item.createnuclear.yellow_anti_radiation_chestplate": "ǝʇɐןdʇsǝɥƆ uoıʇɐıpɐᴚ ıʇuⱯ ʍoןןǝʎ", + "item.createnuclear.yellow_anti_radiation_helmet": "ʇǝɯןǝH uoıʇɐıpɐᴚ ıʇuⱯ ʍoןןǝʎ", + "item.createnuclear.yellow_anti_radiation_leggings": "sbuıbbǝꞀ uoıʇɐıpɐᴚ ıʇuⱯ ʍoןןǝʎ", "item.createnuclear.yellow_cloth": "ɥʇoןƆ ʍoןןǝʎ", "item.createnuclear.yellowcake": "ǝʞɐɔʍoןןǝʎ", - "item.minecraft.lingering_potion.effect.potion_of_iodine": "ǝuıpoI ɟo uoıʇoԀ buıɹǝbuıꞀ", - "item.minecraft.lingering_potion.effect.potion_of_iodine_augment": "ǝuıpoI ɟo uoıʇoԀ buıɹǝbuıꞀ", "item.minecraft.lingering_potion.effect.potion_of_radiation_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ buıɹǝbuıꞀ", "item.minecraft.lingering_potion.effect.potion_of_radiation_2": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ buıɹǝbuıꞀ", "item.minecraft.lingering_potion.effect.potion_of_radiation_augment_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ buıɹǝbuıꞀ", - "item.minecraft.potion.effect.potion_of_iodine": "ǝuıpoI ɟo uoıʇoԀ", - "item.minecraft.potion.effect.potion_of_iodine_augment": "ǝuıpoI ɟo uoıʇoԀ", "item.minecraft.potion.effect.potion_of_radiation_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ", "item.minecraft.potion.effect.potion_of_radiation_2": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ", "item.minecraft.potion.effect.potion_of_radiation_augment_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ", - "item.minecraft.splash_potion.effect.potion_of_iodine": "ǝuıpoI ɟo uoıʇoԀ ɥsɐןdS", - "item.minecraft.splash_potion.effect.potion_of_iodine_augment": "ǝuıpoI ɟo uoıʇoԀ ɥsɐןdS", "item.minecraft.splash_potion.effect.potion_of_radiation_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ ɥsɐןdS", "item.minecraft.splash_potion.effect.potion_of_radiation_2": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ ɥsɐןdS", "item.minecraft.splash_potion.effect.potion_of_radiation_augment_1": "uoıʇɐıpɐᴚ ɟo uoıʇoԀ ɥsɐןdS", - "item.minecraft.tipped_arrow.effect.potion_of_iodine": "ǝuıpoI ɟo ʍoɹɹⱯ", - "item.minecraft.tipped_arrow.effect.potion_of_iodine_augment": "ǝuıpoI ɟo ʍoɹɹⱯ", "item.minecraft.tipped_arrow.effect.potion_of_radiation_1": "uoıʇɐıpɐᴚ ɟo ʍoɹɹⱯ", "item.minecraft.tipped_arrow.effect.potion_of_radiation_2": "uoıʇɐıpɐᴚ ɟo ʍoɹɹⱯ", "item.minecraft.tipped_arrow.effect.potion_of_radiation_augment_1": "uoıʇɐıpɐᴚ ɟo ʍoɹɹⱯ", "itemGroup.createnuclear.main": "ɹɐǝןɔnN ǝʇɐǝɹƆ", "itemgroup.uranium": "dnoɹ⅁ ɯnıuɐɹ∩", + "overlay.event_message": "ɹǝɯıʇ %s ⚠ buıuɹɐM ⚠", "reactor.info.assembled.creator": "pǝןqɯǝssɐ uǝǝq sɐɥ ɹoʇɔɐǝᴚ", + "reactor.info.assembled.destroyer": "pǝןqɯǝssɐsıp uǝǝq sɐɥ ɹoʇɔɐǝᴚ", + "reactor.info.assembled.none": "pǝןqɯǝssɐ ʇou sı ɹoʇɔɐǝᴚ", + "reactor.info.is": "sı ɹǝןןoɹʇuoɔ", "reactor.item.gui.name": "uɹǝʇʇɐԀ bıɟuoƆ", "reactor.update.casing.input": "ʇnduı uı buısɐɔ ǝɥʇ ǝʇɐpd∩", "tag.fluid.c.uranium": "ɯnıuɐɹ∩ pınןℲ", diff --git a/src/generated/resources/assets/createnuclear/lang/en_us.json b/src/generated/resources/assets/createnuclear/lang/en_us.json index 5c99babaa..121cbc839 100644 --- a/src/generated/resources/assets/createnuclear/lang/en_us.json +++ b/src/generated/resources/assets/createnuclear/lang/en_us.json @@ -104,7 +104,7 @@ "block.createnuclear.deepslate_thorium_ore": "Deepslate Thorium Ore", "block.createnuclear.deepslate_uranium_ore": "Deepslate Uranium Ore", "block.createnuclear.enriched_soul_soil": "Enriched Soul Soil", - "block.createnuclear.enriched_soul_soil.tooltip.summary": "The _only_ block who create _enriched fire_. Can be used to _craft_ enriched campfire or just to make a _green fire_.", + "block.createnuclear.enriched_soul_soil.tooltip.summary": "The _only_ block who create _enriched fire_.Can be used to _craft_ enriched campfire or just to make a _green fire_.", "block.createnuclear.enriching_campfire": "Enriching Campfire", "block.createnuclear.enriching_fire": "Enriching Fire", "block.createnuclear.layered_autunite": "Layered Autunite", @@ -272,26 +272,27 @@ "createnuclear.reactor.debug.title": "--- Reactor diagnostics ---", "createnuclear.reactor.debug.valid_position": " valid @ %s", "createnuclear.snow_powder.fan.recipe": "Cryogenic fan", - "createnuclear.subtitle.alarm/alarm": "Reactor Alarm Loop", + "createnuclear.subtitle.alarm/alarm": "Reactor Alarm", "createnuclear.subtitle.alarm/reactor_alarm": "Reactor Alarm", - "createnuclear.subtitle.biomes/wasteland": "Wasteland", "createnuclear.subtitle.explosion/large_nuclear_explosion": "Large Nuclear Explosion", "createnuclear.subtitle.explosion/main": "Nuclear Explosion Main", "createnuclear.subtitle.explosion/nuclear_explosion": "Nuclear Explosion", + "createnuclear.subtitle.explosion/nuclear_explosion_ringing": "Nuclear Explosion Ringing", "createnuclear.subtitle.explosion/nuclear_explosion_rumble": "Nuclear Explosion Rumble", - "createnuclear.subtitle.explosion/ringing": "Nuclear Explosion Ringing", "createnuclear.subtitle.explosion/rumble": "Nuclear Explosion Rumble", "createnuclear.subtitle.explosion/shockwave": "Nuclear Explosion Shockwave", "createnuclear.subtitle.geiger/high": "Geiger High", "createnuclear.subtitle.geiger/low": "Geiger Low", - "createnuclear.subtitle.geiger/medium": "Geiger Medium", + "createnuclear.subtitle.geiger/medium": "GeiGer Medium", "createnuclear.subtitle.reacteur/activation": "Reactor Activation", - "createnuclear.subtitle.reacteur/assemble_deassemble/motor_assemble": "Motor Assemble", - "createnuclear.subtitle.reacteur/assemble_deassemble/motor_disassemble": "Motor Disassemble", + "createnuclear.subtitle.reacteur/casing_break": "Break Reactor Casing", + "createnuclear.subtitle.reacteur/casing_fall": "Reactor Casing Fall", + "createnuclear.subtitle.reacteur/casing_hit": "Hit Reactor Casing", + "createnuclear.subtitle.reacteur/casing_place": "Place Reactor Casing", + "createnuclear.subtitle.reacteur/casing_step": "Step on Reactor Casing", "createnuclear.subtitle.reacteur/running": "Reactor Running", "createnuclear.subtitle.reacteur/shut_off": "Reactor Shut Off", "createnuclear.tooltip.baseRodHeat": "Base Rod Heat: %d Q", - "createnuclear.tooltip.biome_irradiation_extractor.biome_restore": "Restorations: %d / %d", "createnuclear.tooltip.fluid": "Fluid: %s ", "createnuclear.tooltip.fluid.amount": "%d mb", "createnuclear.tooltip.fluid.none": "Fluid: None ", @@ -301,12 +302,12 @@ "createnuclear.tooltip.heatLevel.none": "None", "createnuclear.tooltip.heatLevel.safety": "Safety", "createnuclear.tooltip.heatLevel.warning": "Warning", + "createnuclear.tooltip.heatRatio": "Heat Ratio: %d", "createnuclear.tooltip.item.cooled.rod": "Cooler Rod: ", "createnuclear.tooltip.item.empty.rod": "Input Items: ", "createnuclear.tooltip.item.fuel.rod": "Fuel Rod: ", "createnuclear.tooltip.item.unknown.rod": "Unknown: ", "createnuclear.tooltip.proximityRodHeat": "Proximity Rod Heat: %.2f Q", - "createnuclear.tooltip.ratio": "Rod Value for ratio: %d", "createnuclear.tooltip.rodTimer": "Rod Duration: %d tick", "createnuclear.tooltip.statRod": "Rod Stat Pattern:", "createnuclear.tooltip.typeRod": "Rod Type: %s", @@ -326,9 +327,7 @@ "fluid.createnuclear.uranium": "Liquid Uranium", "gui.createnuclear.reactor_controller.title": "Reactor Controller", "gui.createnuclear.reactor_input.title": "Reactor Input Storage", - "irradiated.taming.wip": "This creature cannot be tamed yet - irradiated mobs are still a work in progress", - "item.createnuclear.biome_irradiation_extractor": "Biome Irradiation Extractor", - "item.createnuclear.biome_irradiation_extractor.tooltip.summary": "This item is currently in _beta_ and might change in future updates.", + "item.createnuclear.biome_restore_cell": "Biome Restore Cell", "item.createnuclear.black_cloth": "Black Cloth", "item.createnuclear.blue_cloth": "Blue Cloth", "item.createnuclear.brown_cloth": "Brown Cloth", @@ -373,7 +372,6 @@ "item.createnuclear.reactor_blueprint_item.tooltip.condition2": "The reactor must be assembled", "item.createnuclear.reactor_blueprint_item.tooltip.summary": "It allows you to configure your own pattern.", "item.createnuclear.red_cloth": "Red Cloth", - "item.createnuclear.reinforced_glass_bottle": "Reinforced Glass Bottle", "item.createnuclear.steel_ingot": "Steel Ingot", "item.createnuclear.steel_nugget": "Steel Nugget", "item.createnuclear.thorium_bucket": "Thorium Bucket", @@ -428,4 +426,4 @@ "tag.item.minecraft.all.campfires": "All Campfires", "tag.item.minecraft.campfires": "Campfires", "tag.item.trinkets.head.face": "Head Face" -} \ No newline at end of file +} diff --git a/src/generated/resources/assets/createnuclear/models/block/deepslate_nitrate_ore.json b/src/generated/resources/assets/createnuclear/models/block/deepslate_nitrate_ore.json deleted file mode 100644 index 7af5e2f28..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/deepslate_nitrate_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/deepslate_nitrate_ore" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/deepslate_thorium_ore.json b/src/generated/resources/assets/createnuclear/models/block/deepslate_thorium_ore.json deleted file mode 100644 index 8ba7752a6..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/deepslate_thorium_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/deepslate_thorium_ore" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/nitrate_ore.json b/src/generated/resources/assets/createnuclear/models/block/nitrate_ore.json deleted file mode 100644 index 575456042..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/nitrate_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/nitrate_ore" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/nitrogen.json b/src/generated/resources/assets/createnuclear/models/block/nitrogen.json deleted file mode 100644 index a48ca03d1..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/nitrogen.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": { - "particle": "createnuclear:fluid/nitrogen_still" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/raw_thorium_block.json b/src/generated/resources/assets/createnuclear/models/block/raw_thorium_block.json deleted file mode 100644 index 9301beef3..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/raw_thorium_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/raw_thorium_block" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/off.json b/src/generated/resources/assets/createnuclear/models/block/reactor/controller/off.json deleted file mode 100644 index fb38b94e5..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/off.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:block/reactor/controller/block", - "textures": { - "1": "createnuclear:block/reactor/controller/controller_panel_off", - "particle": "createnuclear:block/reactor/controller/controller_panel_off" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/on.json b/src/generated/resources/assets/createnuclear/models/block/reactor/controller/on.json deleted file mode 100644 index 423b3f4f9..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/on.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:block/reactor/controller/block", - "textures": { - "1": "createnuclear:block/reactor/controller/controller_panel_on", - "particle": "createnuclear:block/reactor/controller/controller_panel_on" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/standby.json b/src/generated/resources/assets/createnuclear/models/block/reactor/controller/standby.json deleted file mode 100644 index 59dc81de5..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/reactor/controller/standby.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:block/reactor/controller/block", - "textures": { - "1": "createnuclear:block/reactor/controller/controller_panel_standby", - "particle": "createnuclear:block/reactor/controller/controller_panel_standby" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/reactor_alarm.json b/src/generated/resources/assets/createnuclear/models/block/reactor_alarm.json deleted file mode 100644 index e78ea0f3b..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/reactor_alarm.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/reactor_alarm" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/thorium.json b/src/generated/resources/assets/createnuclear/models/block/thorium.json deleted file mode 100644 index 5a6ef097c..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": { - "particle": "createnuclear:fluid/thorium_still" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/thorium_block.json b/src/generated/resources/assets/createnuclear/models/block/thorium_block.json deleted file mode 100644 index 1295cc9f7..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/thorium_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/thorium_block" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/block/thorium_ore.json b/src/generated/resources/assets/createnuclear/models/block/thorium_ore.json deleted file mode 100644 index bc948d220..000000000 --- a/src/generated/resources/assets/createnuclear/models/block/thorium_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "createnuclear:block/thorium_ore" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/nitrogen_bucket.json b/src/generated/resources/assets/createnuclear/models/item/anti_radiation_boots.json similarity index 50% rename from src/generated/resources/assets/createnuclear/models/item/nitrogen_bucket.json rename to src/generated/resources/assets/createnuclear/models/item/anti_radiation_boots.json index 8b1e966d2..703df56e1 100644 --- a/src/generated/resources/assets/createnuclear/models/item/nitrogen_bucket.json +++ b/src/generated/resources/assets/createnuclear/models/item/anti_radiation_boots.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "createnuclear:item/nitrogen_bucket" + "layer0": "createnuclear:item/armors/anti_radiation_boots" } } \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor.json b/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor.json deleted file mode 100644 index 5afa3b26a..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "createnuclear:item/biome_irradiation_extractor/quarter", - "predicate": { - "createnuclear:biome_restore": 0.25 - } - }, - { - "model": "createnuclear:item/biome_irradiation_extractor/half", - "predicate": { - "createnuclear:biome_restore": 0.5 - } - }, - { - "model": "createnuclear:item/biome_irradiation_extractor/three_quarters", - "predicate": { - "createnuclear:biome_restore": 0.75 - } - }, - { - "model": "createnuclear:item/biome_irradiation_extractor/full", - "predicate": { - "createnuclear:biome_restore": 1.0 - } - } - ], - "textures": { - "layer0": "createnuclear:item/biome_irradiation_extractor/empty" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/full.json b/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/full.json deleted file mode 100644 index 1f07daec8..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/full.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/biome_irradiation_extractor/full" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/half.json b/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/half.json deleted file mode 100644 index 25634c8ac..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/half.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/biome_irradiation_extractor/half" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/quarter.json b/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/quarter.json deleted file mode 100644 index 35b311abc..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/quarter.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/biome_irradiation_extractor/quarter" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/three_quarters.json b/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/three_quarters.json deleted file mode 100644 index dd251fd81..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/biome_irradiation_extractor/three_quarters.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/biome_irradiation_extractor/three_quarters" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_chestplate.json new file mode 100644 index 000000000..7d0d44ac3 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/black_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_helmet.json new file mode 100644 index 000000000..46225ff06 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/black_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_leggings.json new file mode 100644 index 000000000..a88edd4fe --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/black_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/black_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..4ea98be85 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/blue_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_helmet.json new file mode 100644 index 000000000..e7c37591f --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/blue_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_leggings.json new file mode 100644 index 000000000..5f9b8db04 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/blue_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/blue_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_chestplate.json new file mode 100644 index 000000000..faa30b54e --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/brown_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_helmet.json new file mode 100644 index 000000000..cb65b3957 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/brown_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_leggings.json new file mode 100644 index 000000000..ebbf44e33 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/brown_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/brown_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_boots.json deleted file mode 100644 index 69119f5f7..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/black_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_chestplate.json deleted file mode 100644 index 6675fc3e0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/black_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_helmet.json deleted file mode 100644 index 8aa9ce757..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/black_anti_radiation_suit", - "particle": "createnuclear:item/armors/black_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_leggings.json deleted file mode 100644 index 26b2d81c2..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/black_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/black_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_boots.json deleted file mode 100644 index bc00cdafa..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_chestplate.json deleted file mode 100644 index 609f89b9e..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_helmet.json deleted file mode 100644 index ef9dff51a..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/blue_anti_radiation_suit", - "particle": "createnuclear:item/armors/blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_leggings.json deleted file mode 100644 index c17392eb2..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/blue_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_boots.json deleted file mode 100644 index 25fa3e012..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/brown_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_chestplate.json deleted file mode 100644 index 09169bff8..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/brown_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_helmet.json deleted file mode 100644 index fa4da8401..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/brown_anti_radiation_suit", - "particle": "createnuclear:item/armors/brown_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_leggings.json deleted file mode 100644 index c690923f0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/brown_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/brown_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_boots.json deleted file mode 100644 index a2faeecbf..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/cyan_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_chestplate.json deleted file mode 100644 index 32883f011..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/cyan_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_helmet.json deleted file mode 100644 index 2a0f8c9c0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/cyan_anti_radiation_suit", - "particle": "createnuclear:item/armors/cyan_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_leggings.json deleted file mode 100644 index 81e4a6024..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/cyan_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/cyan_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_boots.json deleted file mode 100644 index 9c16f60a0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_chestplate.json deleted file mode 100644 index c60317b61..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_helmet.json deleted file mode 100644 index eed2cc4ba..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/gray_anti_radiation_suit", - "particle": "createnuclear:item/armors/gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_leggings.json deleted file mode 100644 index 249fc9828..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/gray_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_boots.json deleted file mode 100644 index 10953b22f..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/green_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_chestplate.json deleted file mode 100644 index 581676201..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/green_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_helmet.json deleted file mode 100644 index a8641aae6..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/green_anti_radiation_suit", - "particle": "createnuclear:item/armors/green_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_leggings.json deleted file mode 100644 index 5bb03c06c..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/green_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/green_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_boots.json deleted file mode 100644 index d18e5ee8d..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/light_blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_chestplate.json deleted file mode 100644 index 02c67b153..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/light_blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_helmet.json deleted file mode 100644 index 7c80dea80..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/light_blue_anti_radiation_suit", - "particle": "createnuclear:item/armors/light_blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_leggings.json deleted file mode 100644 index cd611a9e9..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_blue_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/light_blue_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_boots.json deleted file mode 100644 index 66e566066..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/light_gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_chestplate.json deleted file mode 100644 index afba5c083..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/light_gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_helmet.json deleted file mode 100644 index 597080487..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/light_gray_anti_radiation_suit", - "particle": "createnuclear:item/armors/light_gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_leggings.json deleted file mode 100644 index bc1afc65e..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/light_gray_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/light_gray_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_boots.json deleted file mode 100644 index 0ee29f8b0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/lime_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_chestplate.json deleted file mode 100644 index b4fd6a4a0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/lime_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_helmet.json deleted file mode 100644 index 5e7924d53..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/lime_anti_radiation_suit", - "particle": "createnuclear:item/armors/lime_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_leggings.json deleted file mode 100644 index 028841ee5..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/lime_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/lime_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_boots.json deleted file mode 100644 index f1a1e3d3e..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/magenta_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_chestplate.json deleted file mode 100644 index 0b9cefd79..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/magenta_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_helmet.json deleted file mode 100644 index 412ed6f67..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/magenta_anti_radiation_suit", - "particle": "createnuclear:item/armors/magenta_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_leggings.json deleted file mode 100644 index 052a1c32a..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/magenta_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/magenta_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_boots.json deleted file mode 100644 index c18a4bbd0..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/orange_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_chestplate.json deleted file mode 100644 index 1e9533367..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/orange_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_helmet.json deleted file mode 100644 index 7d9bb28e6..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/orange_anti_radiation_suit", - "particle": "createnuclear:item/armors/orange_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_leggings.json deleted file mode 100644 index a71064a51..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/orange_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/orange_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_boots.json deleted file mode 100644 index aab0a59bd..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/pink_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_chestplate.json deleted file mode 100644 index 8a4f72db7..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/pink_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_helmet.json deleted file mode 100644 index 43657ec3d..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/pink_anti_radiation_suit", - "particle": "createnuclear:item/armors/pink_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_leggings.json deleted file mode 100644 index 0d1be27ae..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/pink_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/pink_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_boots.json deleted file mode 100644 index 8059c6692..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/purple_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_chestplate.json deleted file mode 100644 index 5a4416201..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/purple_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_helmet.json deleted file mode 100644 index 6efbf23d4..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/purple_anti_radiation_suit", - "particle": "createnuclear:item/armors/purple_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_leggings.json deleted file mode 100644 index 5e000c478..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/purple_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/purple_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_boots.json deleted file mode 100644 index 516a66fc1..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/red_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_chestplate.json deleted file mode 100644 index 0dd13c7e1..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/red_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_helmet.json deleted file mode 100644 index 63e497a10..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/red_anti_radiation_suit", - "particle": "createnuclear:item/armors/red_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_leggings.json deleted file mode 100644 index 1b62aaa2e..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/red_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/red_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_boots.json deleted file mode 100644 index 7d9de83f8..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/white_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_chestplate.json deleted file mode 100644 index 995ff506a..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/white_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_helmet.json deleted file mode 100644 index c89f038d7..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/white_anti_radiation_suit", - "particle": "createnuclear:item/armors/white_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_leggings.json deleted file mode 100644 index e99461b63..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/white_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/white_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_boots.json deleted file mode 100644 index d1ecbe8b5..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_boots.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_boots/item", - "textures": { - "14": "createnuclear:item/armors/yellow_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_chestplate.json deleted file mode 100644 index 6f12a2ff7..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_chestplate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_chestplate/item", - "textures": { - "14": "createnuclear:item/armors/yellow_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_helmet.json deleted file mode 100644 index 0f97b2b94..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_helmet.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_helmet/item", - "textures": { - "layer0": "createnuclear:item/armors/yellow_anti_radiation_suit", - "particle": "createnuclear:item/armors/yellow_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_leggings.json deleted file mode 100644 index 77b23ea75..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/colored/yellow_anti_radiation_leggings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "createnuclear:item/default_anti_radiation_leggings/item", - "textures": { - "14": "createnuclear:item/armors/yellow_anti_radiation_suit" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/cooled_nitrogen_concentrate.json b/src/generated/resources/assets/createnuclear/models/item/cooled_nitrogen_concentrate.json deleted file mode 100644 index e122350fb..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/cooled_nitrogen_concentrate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/cooled_nitrogen_concentrate" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_chestplate.json new file mode 100644 index 000000000..04c605bd1 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/cyan_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_helmet.json new file mode 100644 index 000000000..9c29042ba --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/cyan_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_leggings.json new file mode 100644 index 000000000..a7d6f2510 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/cyan_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/cyan_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/deepslate_nitrate_ore.json b/src/generated/resources/assets/createnuclear/models/item/deepslate_nitrate_ore.json deleted file mode 100644 index d0f8ebb37..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/deepslate_nitrate_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/deepslate_nitrate_ore" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/deepslate_thorium_ore.json b/src/generated/resources/assets/createnuclear/models/item/deepslate_thorium_ore.json deleted file mode 100644 index c7a358aea..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/deepslate_thorium_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/deepslate_thorium_ore" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_boots.json b/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_boots.json deleted file mode 100644 index 7e2cc99b4..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_boots.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "createnuclear:item/colored/white_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.0625 - } - }, - { - "model": "createnuclear:item/colored/orange_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.125 - } - }, - { - "model": "createnuclear:item/colored/magenta_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.1875 - } - }, - { - "model": "createnuclear:item/colored/light_blue_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.25 - } - }, - { - "model": "createnuclear:item/colored/yellow_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.3125 - } - }, - { - "model": "createnuclear:item/colored/lime_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.375 - } - }, - { - "model": "createnuclear:item/colored/pink_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.4375 - } - }, - { - "model": "createnuclear:item/colored/gray_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.5 - } - }, - { - "model": "createnuclear:item/colored/light_gray_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.5625 - } - }, - { - "model": "createnuclear:item/colored/cyan_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.625 - } - }, - { - "model": "createnuclear:item/colored/purple_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.6875 - } - }, - { - "model": "createnuclear:item/colored/blue_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.75 - } - }, - { - "model": "createnuclear:item/colored/brown_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.8125 - } - }, - { - "model": "createnuclear:item/colored/green_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.875 - } - }, - { - "model": "createnuclear:item/colored/red_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 0.9375 - } - }, - { - "model": "createnuclear:item/colored/black_anti_radiation_boots", - "predicate": { - "createnuclear:cloth_color": 1.0 - } - } - ], - "textures": { - "layer0": "createnuclear:item/armors/default_anti_radiation_boots" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate.json deleted file mode 100644 index b851ffacd..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "createnuclear:item/colored/white_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.0625 - } - }, - { - "model": "createnuclear:item/colored/orange_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.125 - } - }, - { - "model": "createnuclear:item/colored/magenta_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.1875 - } - }, - { - "model": "createnuclear:item/colored/light_blue_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.25 - } - }, - { - "model": "createnuclear:item/colored/yellow_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.3125 - } - }, - { - "model": "createnuclear:item/colored/lime_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.375 - } - }, - { - "model": "createnuclear:item/colored/pink_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.4375 - } - }, - { - "model": "createnuclear:item/colored/gray_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.5 - } - }, - { - "model": "createnuclear:item/colored/light_gray_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.5625 - } - }, - { - "model": "createnuclear:item/colored/cyan_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.625 - } - }, - { - "model": "createnuclear:item/colored/purple_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.6875 - } - }, - { - "model": "createnuclear:item/colored/blue_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.75 - } - }, - { - "model": "createnuclear:item/colored/brown_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.8125 - } - }, - { - "model": "createnuclear:item/colored/green_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.875 - } - }, - { - "model": "createnuclear:item/colored/red_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 0.9375 - } - }, - { - "model": "createnuclear:item/colored/black_anti_radiation_chestplate", - "predicate": { - "createnuclear:cloth_color": 1.0 - } - } - ], - "textures": { - "layer0": "createnuclear:item/armors/default_anti_radiation_chestplate" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_helmet.json deleted file mode 100644 index 53d4be45f..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_helmet.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "createnuclear:item/colored/white_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.0625 - } - }, - { - "model": "createnuclear:item/colored/orange_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.125 - } - }, - { - "model": "createnuclear:item/colored/magenta_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.1875 - } - }, - { - "model": "createnuclear:item/colored/light_blue_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.25 - } - }, - { - "model": "createnuclear:item/colored/yellow_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.3125 - } - }, - { - "model": "createnuclear:item/colored/lime_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.375 - } - }, - { - "model": "createnuclear:item/colored/pink_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.4375 - } - }, - { - "model": "createnuclear:item/colored/gray_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.5 - } - }, - { - "model": "createnuclear:item/colored/light_gray_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.5625 - } - }, - { - "model": "createnuclear:item/colored/cyan_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.625 - } - }, - { - "model": "createnuclear:item/colored/purple_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.6875 - } - }, - { - "model": "createnuclear:item/colored/blue_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.75 - } - }, - { - "model": "createnuclear:item/colored/brown_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.8125 - } - }, - { - "model": "createnuclear:item/colored/green_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.875 - } - }, - { - "model": "createnuclear:item/colored/red_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 0.9375 - } - }, - { - "model": "createnuclear:item/colored/black_anti_radiation_helmet", - "predicate": { - "createnuclear:cloth_color": 1.0 - } - } - ], - "textures": { - "layer0": "createnuclear:item/armors/default_anti_radiation_helmet" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_leggings.json deleted file mode 100644 index cc553f827..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/default_anti_radiation_leggings.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "createnuclear:item/colored/white_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.0625 - } - }, - { - "model": "createnuclear:item/colored/orange_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.125 - } - }, - { - "model": "createnuclear:item/colored/magenta_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.1875 - } - }, - { - "model": "createnuclear:item/colored/light_blue_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.25 - } - }, - { - "model": "createnuclear:item/colored/yellow_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.3125 - } - }, - { - "model": "createnuclear:item/colored/lime_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.375 - } - }, - { - "model": "createnuclear:item/colored/pink_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.4375 - } - }, - { - "model": "createnuclear:item/colored/gray_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.5 - } - }, - { - "model": "createnuclear:item/colored/light_gray_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.5625 - } - }, - { - "model": "createnuclear:item/colored/cyan_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.625 - } - }, - { - "model": "createnuclear:item/colored/purple_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.6875 - } - }, - { - "model": "createnuclear:item/colored/blue_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.75 - } - }, - { - "model": "createnuclear:item/colored/brown_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.8125 - } - }, - { - "model": "createnuclear:item/colored/green_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.875 - } - }, - { - "model": "createnuclear:item/colored/red_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 0.9375 - } - }, - { - "model": "createnuclear:item/colored/black_anti_radiation_leggings", - "predicate": { - "createnuclear:cloth_color": 1.0 - } - } - ], - "textures": { - "layer0": "createnuclear:item/armors/default_anti_radiation_leggings" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..157232194 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/gray_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_helmet.json new file mode 100644 index 000000000..ab33a1af7 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/gray_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_leggings.json new file mode 100644 index 000000000..9708f7a46 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/gray_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/gray_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_chestplate.json new file mode 100644 index 000000000..624ba0736 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/green_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_helmet.json new file mode 100644 index 000000000..c766bd2ef --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/green_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_leggings.json new file mode 100644 index 000000000..07af99b17 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/green_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/green_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..03200d24d --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/light_blue_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_helmet.json new file mode 100644 index 000000000..95498a8cb --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/light_blue_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_leggings.json new file mode 100644 index 000000000..79eb60004 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_blue_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/light_blue_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..e30f93f8d --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/light_gray_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_helmet.json new file mode 100644 index 000000000..9aeb29d3c --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/light_gray_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_leggings.json new file mode 100644 index 000000000..a1e91cf37 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/light_gray_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/light_gray_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_chestplate.json new file mode 100644 index 000000000..f4f7f966f --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/lime_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_helmet.json new file mode 100644 index 000000000..1e7eb904b --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/lime_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_leggings.json new file mode 100644 index 000000000..87466b53a --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/lime_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/lime_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_chestplate.json new file mode 100644 index 000000000..624729818 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/magenta_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_helmet.json new file mode 100644 index 000000000..16f6f1816 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/magenta_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_leggings.json new file mode 100644 index 000000000..a7da5fdd0 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/magenta_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/magenta_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/nitrate.json b/src/generated/resources/assets/createnuclear/models/item/nitrate.json deleted file mode 100644 index b5e84b43b..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/nitrate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/nitrate" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/nitrate_ore.json b/src/generated/resources/assets/createnuclear/models/item/nitrate_ore.json deleted file mode 100644 index 47e5d8735..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/nitrate_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/nitrate_ore" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/nitrogen_concentrate.json b/src/generated/resources/assets/createnuclear/models/item/nitrogen_concentrate.json deleted file mode 100644 index 80476cb24..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/nitrogen_concentrate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/nitrogen_concentrate" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_chestplate.json new file mode 100644 index 000000000..ce18ac3ce --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/orange_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_helmet.json new file mode 100644 index 000000000..c922ae529 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/orange_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_leggings.json new file mode 100644 index 000000000..202a468ce --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/orange_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/orange_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_chestplate.json new file mode 100644 index 000000000..a24f101d8 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/pink_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_helmet.json new file mode 100644 index 000000000..6ec17b119 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/pink_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_leggings.json new file mode 100644 index 000000000..58b1c4ad6 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/pink_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/pink_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_chestplate.json new file mode 100644 index 000000000..3e9009b60 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/purple_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_helmet.json new file mode 100644 index 000000000..748b018f0 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/purple_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_leggings.json new file mode 100644 index 000000000..001024bbc --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/purple_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/purple_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/raw_thorium.json b/src/generated/resources/assets/createnuclear/models/item/raw_thorium.json deleted file mode 100644 index 82bb96b89..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/raw_thorium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/raw_thorium" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/raw_thorium_block.json b/src/generated/resources/assets/createnuclear/models/item/raw_thorium_block.json deleted file mode 100644 index b75c1958f..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/raw_thorium_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/raw_thorium_block" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/reactor_alarm.json b/src/generated/resources/assets/createnuclear/models/item/reactor_alarm.json deleted file mode 100644 index 889a06efb..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/reactor_alarm.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/reactor_alarm" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/reactor_fluid_input.json b/src/generated/resources/assets/createnuclear/models/item/reactor_fluid_input.json deleted file mode 100644 index 9def8ea63..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/reactor_fluid_input.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/reactor/fluid_input/item" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/reactor_input.json b/src/generated/resources/assets/createnuclear/models/item/reactor_input.json new file mode 100644 index 000000000..b4175b22e --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/reactor_input.json @@ -0,0 +1,3 @@ +{ + "parent": "createnuclear:block/reactor/input/item" +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/reactor_rod_input.json b/src/generated/resources/assets/createnuclear/models/item/reactor_rod_input.json deleted file mode 100644 index 5fe1a68b1..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/reactor_rod_input.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/reactor/rod_input/item" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_chestplate.json new file mode 100644 index 000000000..7e71188f6 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/red_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_helmet.json new file mode 100644 index 000000000..a4736bd14 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/red_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_leggings.json new file mode 100644 index 000000000..524089846 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/red_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/red_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/reinforced_glass_bottle.json b/src/generated/resources/assets/createnuclear/models/item/reinforced_glass_bottle.json deleted file mode 100644 index c29947f4a..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/reinforced_glass_bottle.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/reinforced_glass_bottle" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_block.json b/src/generated/resources/assets/createnuclear/models/item/thorium_block.json deleted file mode 100644 index 94d3fcb85..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/thorium_block" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_bucket.json b/src/generated/resources/assets/createnuclear/models/item/thorium_bucket.json deleted file mode 100644 index 2a48a3431..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_bucket.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/thorium_bucket" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_dust.json b/src/generated/resources/assets/createnuclear/models/item/thorium_dust.json deleted file mode 100644 index 7c6ab4d85..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_dust.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/thorium_dust" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_ingot.json b/src/generated/resources/assets/createnuclear/models/item/thorium_ingot.json deleted file mode 100644 index 3cfe5d773..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_ingot.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/thorium_ingot" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_nugget.json b/src/generated/resources/assets/createnuclear/models/item/thorium_nugget.json deleted file mode 100644 index 3389988a9..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_nugget.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/thorium_nugget" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_ore.json b/src/generated/resources/assets/createnuclear/models/item/thorium_ore.json deleted file mode 100644 index c0ce70ce8..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "createnuclear:block/thorium_ore" -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/thorium_rod.json b/src/generated/resources/assets/createnuclear/models/item/thorium_rod.json deleted file mode 100644 index 9f31f8ad1..000000000 --- a/src/generated/resources/assets/createnuclear/models/item/thorium_rod.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "createnuclear:item/thorium_rod" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_chestplate.json new file mode 100644 index 000000000..a5d91e2bc --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/white_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_helmet.json new file mode 100644 index 000000000..c203cda2f --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/white_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_leggings.json new file mode 100644 index 000000000..f6d419c65 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/white_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/white_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_chestplate.json b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_chestplate.json new file mode 100644 index 000000000..e66b6d45f --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/chestplates/yellow_anti_radiation_chestplate" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_helmet.json b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_helmet.json new file mode 100644 index 000000000..6b76a4311 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/helmets/yellow_anti_radiation_helmet" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_leggings.json b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_leggings.json new file mode 100644 index 000000000..618032623 --- /dev/null +++ b/src/generated/resources/assets/createnuclear/models/item/yellow_anti_radiation_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "createnuclear:item/armors/leggings/yellow_anti_radiation_leggings" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/createnuclear/sounds.json b/src/generated/resources/assets/createnuclear/sounds.json deleted file mode 100644 index 94a577445..000000000 --- a/src/generated/resources/assets/createnuclear/sounds.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "alarm/alarm": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:alarm/alarm" - } - ], - "subtitle": "createnuclear.subtitle.alarm/alarm" - }, - "alarm/reactor_alarm": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:alarm/reactor_alarm" - } - ], - "subtitle": "createnuclear.subtitle.alarm/reactor_alarm" - }, - "biomes/wasteland": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:biomes/wasteland" - } - ], - "subtitle": "createnuclear.subtitle.biomes/wasteland" - }, - "explosion/large_nuclear_explosion": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/large_nuclear_explosion" - } - ], - "subtitle": "createnuclear.subtitle.explosion/large_nuclear_explosion" - }, - "explosion/main": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/main" - } - ], - "subtitle": "createnuclear.subtitle.explosion/main" - }, - "explosion/nuclear_explosion": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/nuclear_explosion" - } - ], - "subtitle": "createnuclear.subtitle.explosion/nuclear_explosion" - }, - "explosion/nuclear_explosion_rumble": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/nuclear_explosion_rumble" - } - ], - "subtitle": "createnuclear.subtitle.explosion/nuclear_explosion_rumble" - }, - "explosion/ringing": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/ringing" - } - ], - "subtitle": "createnuclear.subtitle.explosion/ringing" - }, - "explosion/rumble": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/rumble" - } - ], - "subtitle": "createnuclear.subtitle.explosion/rumble" - }, - "explosion/shockwave": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:explosion/shockwave" - } - ], - "subtitle": "createnuclear.subtitle.explosion/shockwave" - }, - "geiger/high": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:geiger/high" - } - ], - "subtitle": "createnuclear.subtitle.geiger/high" - }, - "geiger/low": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:geiger/low" - } - ], - "subtitle": "createnuclear.subtitle.geiger/low" - }, - "geiger/medium": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:geiger/medium" - } - ], - "subtitle": "createnuclear.subtitle.geiger/medium" - }, - "reacteur/activation": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:reacteur/activation" - } - ], - "subtitle": "createnuclear.subtitle.reacteur/activation" - }, - "reacteur/assemble_deassemble/motor_assemble": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:reacteur/assemble_deassemble/motor_assemble" - } - ], - "subtitle": "createnuclear.subtitle.reacteur/assemble_deassemble/motor_assemble" - }, - "reacteur/assemble_deassemble/motor_disassemble": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:reacteur/assemble_deassemble/motor_disassemble" - } - ], - "subtitle": "createnuclear.subtitle.reacteur/assemble_deassemble/motor_disassemble" - }, - "reacteur/running": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:reacteur/running" - } - ], - "subtitle": "createnuclear.subtitle.reacteur/running" - }, - "reacteur/shut_off": { - "sounds": [ - { - "type": "file", - "name": "createnuclear:reacteur/shut_off" - } - ], - "subtitle": "createnuclear.subtitle.reacteur/shut_off" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/absolute_zero.json b/src/generated/resources/data/createnuclear/advancements/absolute_zero.json deleted file mode 100644 index 6bb33b4fb..000000000 --- a/src/generated/resources/data/createnuclear/advancements/absolute_zero.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:chill_out", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:nitrogen_bucket" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.absolute_zero.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:nitrogen_bucket" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.absolute_zero" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/anti_radiation_armor.json b/src/generated/resources/data/createnuclear/advancements/anti_radiation_armor.json index 9f27bca39..cd1a68b93 100644 --- a/src/generated/resources/data/createnuclear/advancements/anti_radiation_armor.json +++ b/src/generated/resources/data/createnuclear/advancements/anti_radiation_armor.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "createnuclear:anti_radiation_armor" + "tag": "createnuclear:all_anti_radiation_armors" } ] }, @@ -21,7 +21,7 @@ "frame": "task", "hidden": false, "icon": { - "item": "createnuclear:default_anti_radiation_helmet", + "item": "createnuclear:white_anti_radiation_helmet", "nbt": "{Damage:0}" }, "show_toast": true, diff --git a/src/generated/resources/data/createnuclear/advancements/automatic_uranium.json b/src/generated/resources/data/createnuclear/advancements/automatic_uranium.json index b76f5827f..2eea816ea 100644 --- a/src/generated/resources/data/createnuclear/advancements/automatic_uranium.json +++ b/src/generated/resources/data/createnuclear/advancements/automatic_uranium.json @@ -3,7 +3,7 @@ "criteria": { "0": { "conditions": {}, - "trigger": "createnuclear:automatic_uranium_builtin" + "trigger": "create:automatic_uranium_builtin" } }, "display": { diff --git a/src/generated/resources/data/createnuclear/advancements/avoiding_cancer.json b/src/generated/resources/data/createnuclear/advancements/avoiding_cancer.json deleted file mode 100644 index 2c7e643de..000000000 --- a/src/generated/resources/data/createnuclear/advancements/avoiding_cancer.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "parent": "createnuclear:anti_radiation_armor", - "criteria": { - "0": { - "conditions": { - "player": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "type": "minecraft:player", - "equipment": { - "chest": { - "items": [ - "createnuclear:default_anti_radiation_chestplate" - ] - }, - "feet": { - "items": [ - "createnuclear:default_anti_radiation_boots" - ] - }, - "head": { - "items": [ - "createnuclear:default_anti_radiation_helmet" - ] - }, - "legs": { - "items": [ - "createnuclear:default_anti_radiation_leggings" - ] - } - } - } - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.avoiding_cancer.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:default_anti_radiation_helmet", - "nbt": "{Damage:0}" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.avoiding_cancer" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/chemistry_101.json b/src/generated/resources/data/createnuclear/advancements/chemistry_101.json deleted file mode 100644 index d1e268fc6..000000000 --- a/src/generated/resources/data/createnuclear/advancements/chemistry_101.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:root", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:nitrate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.chemistry_101.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:nitrate" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.chemistry_101" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/chill_out.json b/src/generated/resources/data/createnuclear/advancements/chill_out.json deleted file mode 100644 index bb15e8486..000000000 --- a/src/generated/resources/data/createnuclear/advancements/chill_out.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:getting_concentrated", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:cooled_nitrogen_concentrate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.chill_out.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:cooled_nitrogen_concentrate" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.chill_out" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/craft_enriching_campfire.json b/src/generated/resources/data/createnuclear/advancements/craft_enriching_campfire.json deleted file mode 100644 index 0fde5b86f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/craft_enriching_campfire.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "parent": "createnuclear:root", - "criteria": { - "0": { - "conditions": { - "ingredients": [ - { - "items": [ - "createnuclear:enriched_soul_soil" - ] - }, - { - "tag": "minecraft:logs" - }, - { - "tag": "forge:rods/wooden" - } - ], - "recipe_id": "createnuclear:crafting/enriching_campfire" - }, - "trigger": "minecraft:recipe_crafted" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.craft_enriching_campfire.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:enriching_campfire" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.craft_enriching_campfire" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/crunchy_uranium.json b/src/generated/resources/data/createnuclear/advancements/crunchy_uranium.json deleted file mode 100644 index aa2ae8a50..000000000 --- a/src/generated/resources/data/createnuclear/advancements/crunchy_uranium.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "parent": "createnuclear:yellowcake", - "criteria": { - "0": { - "conditions": { - "item": { - "items": [ - "createnuclear:yellowcake" - ] - } - }, - "trigger": "minecraft:consume_item" - } - }, - "display": { - "announce_to_chat": true, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.crunchy_uranium.desc" - }, - "frame": "goal", - "hidden": true, - "icon": { - "item": "createnuclear:yellowcake" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.crunchy_uranium" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/cryogenic_baptism.json b/src/generated/resources/data/createnuclear/advancements/cryogenic_baptism.json deleted file mode 100644 index 80219e67d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/cryogenic_baptism.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:absolute_zero", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:cryogenic_baptism_builtin" - } - }, - "display": { - "announce_to_chat": true, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.cryogenic_baptism.desc" - }, - "frame": "goal", - "hidden": true, - "icon": { - "item": "createnuclear:nitrogen_bucket" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.cryogenic_baptism" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/dye_anti_radiation_armor.json b/src/generated/resources/data/createnuclear/advancements/dye_anti_radiation_armor.json index 25a2cddb6..08762768f 100644 --- a/src/generated/resources/data/createnuclear/advancements/dye_anti_radiation_armor.json +++ b/src/generated/resources/data/createnuclear/advancements/dye_anti_radiation_armor.json @@ -2,8 +2,34 @@ "parent": "createnuclear:anti_radiation_armor", "criteria": { "0": { - "conditions": {}, - "trigger": "createnuclear:dye_anti_radiation_armor_builtin" + "conditions": { + "items": [ + { + "tag": "createnuclear:anti_radiation_helmet_dye" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "1": { + "conditions": { + "items": [ + { + "tag": "createnuclear:anti_radiation_chestplate_dye" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "2": { + "conditions": { + "items": [ + { + "tag": "createnuclear:anti_radiation_leggings_dye" + } + ] + }, + "trigger": "minecraft:inventory_changed" } }, "display": { @@ -15,7 +41,7 @@ "frame": "task", "hidden": false, "icon": { - "item": "createnuclear:default_anti_radiation_helmet", + "item": "createnuclear:red_anti_radiation_helmet", "nbt": "{Damage:0}" }, "show_toast": true, @@ -26,6 +52,12 @@ "requirements": [ [ "0" + ], + [ + "1" + ], + [ + "2" ] ], "sends_telemetry_event": true diff --git a/src/generated/resources/data/createnuclear/advancements/fueling_the_reactor.json b/src/generated/resources/data/createnuclear/advancements/fueling_the_reactor.json deleted file mode 100644 index c93fd2d31..000000000 --- a/src/generated/resources/data/createnuclear/advancements/fueling_the_reactor.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:feeding_the_reactor", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:reactor_fluid_input" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.fueling_the_reactor.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:reactor_fluid_input" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.fueling_the_reactor" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/full_anti_radiation_armor.json b/src/generated/resources/data/createnuclear/advancements/full_anti_radiation_armor.json new file mode 100644 index 000000000..1cd5b6873 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/full_anti_radiation_armor.json @@ -0,0 +1,47 @@ +{ + "parent": "createnuclear:anti_radiation_armor", + "criteria": { + "0": { + "conditions": { + "items": [ + { + "tag": "createnuclear:anti_radiation_helmet_full_dye" + }, + { + "tag": "createnuclear:anti_radiation_chestplate_full_dye" + }, + { + "tag": "createnuclear:anti_radiation_leggings_full_dye" + }, + { + "tag": "createnuclear:anti_radiation_boots_dye" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "announce_to_chat": false, + "description": { + "color": "#DBA213", + "translate": "advancement.createnuclear.full_anti_radiation_armor.desc" + }, + "frame": "task", + "hidden": false, + "icon": { + "item": "createnuclear:white_anti_radiation_chestplate", + "nbt": "{Damage:0}" + }, + "show_toast": true, + "title": { + "translate": "advancement.createnuclear.full_anti_radiation_armor" + } + }, + "requirements": [ + [ + "0" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/getting_concentrated.json b/src/generated/resources/data/createnuclear/advancements/getting_concentrated.json deleted file mode 100644 index 77d665d51..000000000 --- a/src/generated/resources/data/createnuclear/advancements/getting_concentrated.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:chemistry_101", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:nitrogen_concentrate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.getting_concentrated.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:nitrogen_concentrate" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.getting_concentrated" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/no_time_to_die.json b/src/generated/resources/data/createnuclear/advancements/no_time_to_die.json deleted file mode 100644 index c647b6ec8..000000000 --- a/src/generated/resources/data/createnuclear/advancements/no_time_to_die.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:reactor_controller", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:no_time_to_die_builtin" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.no_time_to_die.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:autunite" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.no_time_to_die" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/raw_thorium.json b/src/generated/resources/data/createnuclear/advancements/raw_thorium.json deleted file mode 100644 index e9892c627..000000000 --- a/src/generated/resources/data/createnuclear/advancements/raw_thorium.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:root", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:raw_thorium" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.raw_thorium.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:raw_thorium" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.raw_thorium" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/reactor_cooler.json b/src/generated/resources/data/createnuclear/advancements/reactor_cooler.json index 645138991..c5234f2ae 100644 --- a/src/generated/resources/data/createnuclear/advancements/reactor_cooler.json +++ b/src/generated/resources/data/createnuclear/advancements/reactor_cooler.json @@ -1,5 +1,5 @@ { - "parent": "createnuclear:reactor_core", + "parent": "createnuclear:reactor_casing", "criteria": { "0": { "conditions": { diff --git a/src/generated/resources/data/createnuclear/advancements/reactor_frame.json b/src/generated/resources/data/createnuclear/advancements/reactor_frame.json index 36c137e85..133a61b9c 100644 --- a/src/generated/resources/data/createnuclear/advancements/reactor_frame.json +++ b/src/generated/resources/data/createnuclear/advancements/reactor_frame.json @@ -1,5 +1,5 @@ { - "parent": "createnuclear:reactor_cooler", + "parent": "createnuclear:reactor_casing", "criteria": { "0": { "conditions": { diff --git a/src/generated/resources/data/createnuclear/advancements/feeding_the_reactor.json b/src/generated/resources/data/createnuclear/advancements/reactor_input.json similarity index 69% rename from src/generated/resources/data/createnuclear/advancements/feeding_the_reactor.json rename to src/generated/resources/data/createnuclear/advancements/reactor_input.json index 524586ca2..d75676dac 100644 --- a/src/generated/resources/data/createnuclear/advancements/feeding_the_reactor.json +++ b/src/generated/resources/data/createnuclear/advancements/reactor_input.json @@ -6,7 +6,7 @@ "items": [ { "items": [ - "createnuclear:reactor_rod_input" + "createnuclear:reactor_input" ] } ] @@ -18,16 +18,16 @@ "announce_to_chat": false, "description": { "color": "#DBA213", - "translate": "advancement.createnuclear.feeding_the_reactor.desc" + "translate": "advancement.createnuclear.reactor_input.desc" }, "frame": "task", "hidden": false, "icon": { - "item": "createnuclear:reactor_rod_input" + "item": "createnuclear:reactor_input" }, "show_toast": true, "title": { - "translate": "advancement.createnuclear.feeding_the_reactor" + "translate": "advancement.createnuclear.reactor_input" } }, "requirements": [ diff --git a/src/generated/resources/data/createnuclear/advancements/unlimited_power.json b/src/generated/resources/data/createnuclear/advancements/reactor_output.json similarity index 76% rename from src/generated/resources/data/createnuclear/advancements/unlimited_power.json rename to src/generated/resources/data/createnuclear/advancements/reactor_output.json index afa6ecc5e..54b8e4b8f 100644 --- a/src/generated/resources/data/createnuclear/advancements/unlimited_power.json +++ b/src/generated/resources/data/createnuclear/advancements/reactor_output.json @@ -1,5 +1,5 @@ { - "parent": "createnuclear:fueling_the_reactor", + "parent": "createnuclear:reactor_casing", "criteria": { "0": { "conditions": { @@ -18,7 +18,7 @@ "announce_to_chat": false, "description": { "color": "#DBA213", - "translate": "advancement.createnuclear.unlimited_power.desc" + "translate": "advancement.createnuclear.reactor_output.desc" }, "frame": "task", "hidden": false, @@ -27,7 +27,7 @@ }, "show_toast": true, "title": { - "translate": "advancement.createnuclear.unlimited_power" + "translate": "advancement.createnuclear.reactor_output" } }, "requirements": [ diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/brewing/crafting/reinforced_glass_bottle.json b/src/generated/resources/data/createnuclear/advancements/recipes/brewing/crafting/reinforced_glass_bottle.json deleted file mode 100644 index d668153c5..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/brewing/crafting/reinforced_glass_bottle.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_reinforced_glass": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:reinforced_glass" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/reinforced_glass_bottle" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_reinforced_glass", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/reinforced_glass_bottle" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_cyan.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/anti_radiation_boots.json similarity index 78% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_cyan.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/anti_radiation_boots.json index 02ef5fac9..565424640 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_cyan.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/anti_radiation_boots.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_cyan" + "recipe": "createnuclear:crafting/items/armors/anti_radiation_boots" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_cyan" + "createnuclear:crafting/items/armors/anti_radiation_boots" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_chestplate.json new file mode 100644 index 000000000..31e34504e --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/black_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/black_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_helmet.json new file mode 100644 index 000000000..fd9547037 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/black_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/black_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_leggings.json new file mode 100644 index 000000000..aebe26611 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/black_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/black_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/black_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..047f28d7e --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/blue_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/blue_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_black.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_helmet.json similarity index 77% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_black.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_helmet.json index 975a1e989..4a04bedd7 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_black.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_helmet.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_black" + "recipe": "createnuclear:crafting/items/armors/blue_anti_radiation_helmet" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_black" + "createnuclear:crafting/items/armors/blue_anti_radiation_helmet" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_boots.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_leggings.json similarity index 76% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_boots.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_leggings.json index af5a591da..12da31701 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_boots.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/blue_anti_radiation_leggings.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:crafting/items/armors/default_anti_radiation_boots" + "recipe": "createnuclear:crafting/items/armors/blue_anti_radiation_leggings" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:crafting/items/armors/default_anti_radiation_boots" + "createnuclear:crafting/items/armors/blue_anti_radiation_leggings" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_chestplate.json new file mode 100644 index 000000000..32883990d --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/brown_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/brown_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_helmet.json new file mode 100644 index 000000000..46e609543 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/brown_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/brown_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_leggings.json new file mode 100644 index 000000000..0124298f2 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/brown_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/brown_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/brown_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_chestplate.json new file mode 100644 index 000000000..6c39961a1 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/cyan_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/cyan_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_helmet.json similarity index 77% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_blue.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_helmet.json index b4a6e5927..aae36f9b1 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_blue.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_helmet.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_blue" + "recipe": "createnuclear:crafting/items/armors/cyan_anti_radiation_helmet" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_blue" + "createnuclear:crafting/items/armors/cyan_anti_radiation_helmet" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_leggings.json new file mode 100644 index 000000000..f72f9edbb --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/cyan_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/cyan_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/cyan_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..0b05ed970 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/gray_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/gray_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_helmet.json new file mode 100644 index 000000000..b6e37d80c --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/gray_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/gray_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_leggings.json new file mode 100644 index 000000000..c65d337be --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/gray_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/gray_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/gray_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_chestplate.json new file mode 100644 index 000000000..6bf46ef69 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/green_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/green_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_helmet.json new file mode 100644 index 000000000..7a6088d4b --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/green_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/green_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_leggings.json new file mode 100644 index 000000000..54e1223ca --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/green_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/green_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/green_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..0b79ba850 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_blue_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_blue_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_helmet.json new file mode 100644 index 000000000..d17a30b94 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_blue_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_blue_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_leggings.json new file mode 100644 index 000000000..064dee9e5 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_blue_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_blue_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_blue_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..083b4a842 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_gray_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_gray_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_helmet.json new file mode 100644 index 000000000..7715e1b0f --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_gray_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_gray_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_leggings.json new file mode 100644 index 000000000..09ce1b425 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/light_gray_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/light_gray_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/light_gray_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_chestplate.json new file mode 100644 index 000000000..d3dde0706 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/lime_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/lime_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_helmet.json new file mode 100644 index 000000000..80e4165a1 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/lime_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/lime_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_leggings.json new file mode 100644 index 000000000..d3ffe2947 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/lime_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/lime_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/lime_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_chestplate.json similarity index 81% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_chestplate.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_chestplate.json index 093d00d53..be2d2aaa2 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_chestplate.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_chestplate.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:crafting/items/armors/default_anti_radiation_chestplate" + "recipe": "createnuclear:crafting/items/armors/magenta_anti_radiation_chestplate" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:crafting/items/armors/default_anti_radiation_chestplate" + "createnuclear:crafting/items/armors/magenta_anti_radiation_chestplate" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_helmet.json similarity index 81% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_helmet.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_helmet.json index 26bc01fb9..b810dae59 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_helmet.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_helmet.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:crafting/items/armors/default_anti_radiation_helmet" + "recipe": "createnuclear:crafting/items/armors/magenta_anti_radiation_helmet" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:crafting/items/armors/default_anti_radiation_helmet" + "createnuclear:crafting/items/armors/magenta_anti_radiation_helmet" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_leggings.json similarity index 81% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_leggings.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_leggings.json index ca8b8b935..278489f2b 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/default_anti_radiation_leggings.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/magenta_anti_radiation_leggings.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:crafting/items/armors/default_anti_radiation_leggings" + "recipe": "createnuclear:crafting/items/armors/magenta_anti_radiation_leggings" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:crafting/items/armors/default_anti_radiation_leggings" + "createnuclear:crafting/items/armors/magenta_anti_radiation_leggings" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_chestplate.json new file mode 100644 index 000000000..9a30a7c64 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/orange_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/orange_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_helmet.json new file mode 100644 index 000000000..1aa187dd5 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/orange_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/orange_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_leggings.json new file mode 100644 index 000000000..457b51189 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/orange_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/orange_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/orange_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_chestplate.json new file mode 100644 index 000000000..29f2f24cd --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/pink_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/pink_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_helmet.json new file mode 100644 index 000000000..74945a9ae --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/pink_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/pink_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_leggings.json new file mode 100644 index 000000000..953375fcc --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/pink_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/pink_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/pink_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_chestplate.json new file mode 100644 index 000000000..86bf3d154 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/purple_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/purple_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_helmet.json new file mode 100644 index 000000000..a996f502a --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/purple_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/purple_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_leggings.json new file mode 100644 index 000000000..d70567ffa --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/purple_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/purple_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/purple_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_chestplate.json new file mode 100644 index 000000000..d538ed190 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/red_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/red_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_brown.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_helmet.json similarity index 77% rename from src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_brown.json rename to src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_helmet.json index 2796e1064..2e2d909b1 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_brown.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_helmet.json @@ -13,7 +13,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_brown" + "recipe": "createnuclear:crafting/items/armors/red_anti_radiation_helmet" }, "trigger": "minecraft:recipe_unlocked" } @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_brown" + "createnuclear:crafting/items/armors/red_anti_radiation_helmet" ] }, "sends_telemetry_event": false diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_leggings.json new file mode 100644 index 000000000..d06aa6fd6 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/red_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/red_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/red_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_chestplate.json new file mode 100644 index 000000000..57e6a8a1d --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/white_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/white_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_helmet.json new file mode 100644 index 000000000..b095d3c19 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/white_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/white_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_leggings.json new file mode 100644 index 000000000..3f974fd79 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/white_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/white_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/white_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_chestplate.json new file mode 100644 index 000000000..7d3b89bad --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_chestplate.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/yellow_anti_radiation_chestplate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/yellow_anti_radiation_chestplate" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_helmet.json new file mode 100644 index 000000000..0ee9523f7 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_helmet.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/yellow_anti_radiation_helmet" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/yellow_anti_radiation_helmet" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_leggings.json new file mode 100644 index 000000000..ac6f93040 --- /dev/null +++ b/src/generated/resources/data/createnuclear/advancements/recipes/combat/crafting/items/armors/yellow_anti_radiation_leggings.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_cloth": { + "conditions": { + "items": [ + { + "tag": "createnuclear:cloth" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "createnuclear:crafting/items/armors/yellow_anti_radiation_leggings" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_cloth", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "createnuclear:crafting/items/armors/yellow_anti_radiation_leggings" + ] + }, + "sends_telemetry_event": false +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_gray.json deleted file mode 100644 index 5c8108563..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_green.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_green.json deleted file mode 100644 index f93992915..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_green.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_green" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_blue.json deleted file mode 100644 index 011cd56fb..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_light_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_gray.json deleted file mode 100644 index b287c1695..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_light_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_light_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_lime.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_lime.json deleted file mode 100644 index 95afd3549..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_lime.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_lime" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_magenta.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_magenta.json deleted file mode 100644 index be7be9e95..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_magenta.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_magenta" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_orange.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_orange.json deleted file mode 100644 index b79a9a70d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_orange.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_orange" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_pink.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_pink.json deleted file mode 100644 index c53b2f46c..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_pink.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_pink" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_purple.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_purple.json deleted file mode 100644 index b1b7b53be..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_purple.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_purple" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_red.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_red.json deleted file mode 100644 index a202e6a89..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_red.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_red" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_white.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_white.json deleted file mode 100644 index 655b80248..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_white.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_white" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_yellow.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_yellow.json deleted file mode 100644 index 17e183208..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_boots_yellow.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_boots_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_boots_yellow" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_black.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_black.json deleted file mode 100644 index 0b8425f59..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_black.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_black" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_blue.json deleted file mode 100644 index a699e4cdf..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_brown.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_brown.json deleted file mode 100644 index a9ca8d1ee..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_brown.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_brown" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_cyan.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_cyan.json deleted file mode 100644 index 7f0985e81..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_cyan.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_cyan" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_gray.json deleted file mode 100644 index 96f2b0123..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_green.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_green.json deleted file mode 100644 index dcf3653ff..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_green.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_green" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_blue.json deleted file mode 100644 index 18aaf609f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_light_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_gray.json deleted file mode 100644 index 4a26eda86..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_light_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_light_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_lime.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_lime.json deleted file mode 100644 index 0898dc9f9..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_lime.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_lime" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_magenta.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_magenta.json deleted file mode 100644 index c75067057..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_magenta.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_magenta" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_orange.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_orange.json deleted file mode 100644 index c0d972249..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_orange.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_orange" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_pink.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_pink.json deleted file mode 100644 index cdff8611d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_pink.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_pink" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_purple.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_purple.json deleted file mode 100644 index cc7f38c67..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_purple.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_purple" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_red.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_red.json deleted file mode 100644 index 1682d0370..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_red.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_red" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_white.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_white.json deleted file mode 100644 index a0bce47cc..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_white.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_white" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_yellow.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_yellow.json deleted file mode 100644 index c8c6dd357..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_chestplate_yellow.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_chestplate_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_chestplate_yellow" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_black.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_black.json deleted file mode 100644 index b4ceadf2d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_black.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_black" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_blue.json deleted file mode 100644 index 4f6889de7..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_brown.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_brown.json deleted file mode 100644 index 644340103..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_brown.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_brown" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_cyan.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_cyan.json deleted file mode 100644 index 84f15992f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_cyan.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_cyan" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_gray.json deleted file mode 100644 index f4ec71add..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_green.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_green.json deleted file mode 100644 index 36e06e650..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_green.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_green" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_blue.json deleted file mode 100644 index f480ca2a4..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_light_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_gray.json deleted file mode 100644 index 79492d6d1..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_light_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_light_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_lime.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_lime.json deleted file mode 100644 index 7629e3b8a..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_lime.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_lime" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_magenta.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_magenta.json deleted file mode 100644 index eadbcd4ee..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_magenta.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_magenta" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_orange.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_orange.json deleted file mode 100644 index 5c54de2a9..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_orange.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_orange" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_pink.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_pink.json deleted file mode 100644 index 904491cc0..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_pink.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_pink" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_purple.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_purple.json deleted file mode 100644 index a5d990207..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_purple.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_purple" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_red.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_red.json deleted file mode 100644 index e9296d67e..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_red.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_red" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_white.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_white.json deleted file mode 100644 index 4847362a9..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_white.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_white" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_yellow.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_yellow.json deleted file mode 100644 index acd0b532c..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_helmet_yellow.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_helmet_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_helmet_yellow" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_black.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_black.json deleted file mode 100644 index a59c137dd..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_black.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_black" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_blue.json deleted file mode 100644 index 51d0d0d6f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_brown.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_brown.json deleted file mode 100644 index 52fced95a..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_brown.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_brown" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_cyan.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_cyan.json deleted file mode 100644 index 7874b9a15..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_cyan.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_cyan" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_gray.json deleted file mode 100644 index a6cf2f7c8..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_green.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_green.json deleted file mode 100644 index 63be3add5..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_green.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_green" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_blue.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_blue.json deleted file mode 100644 index b7c47ba8f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_blue.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_light_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_gray.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_gray.json deleted file mode 100644 index b3efd7fc2..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_light_gray.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_light_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_lime.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_lime.json deleted file mode 100644 index 2da4f4b2d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_lime.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_lime" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_magenta.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_magenta.json deleted file mode 100644 index e69e6e556..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_magenta.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_magenta" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_orange.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_orange.json deleted file mode 100644 index 0e31fed08..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_orange.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_orange" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_pink.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_pink.json deleted file mode 100644 index 0cf2e0669..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_pink.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_pink" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_purple.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_purple.json deleted file mode 100644 index d43bf893b..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_purple.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_purple" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_red.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_red.json deleted file mode 100644 index c34f96996..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_red.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_red" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_white.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_white.json deleted file mode 100644 index fdbf161d7..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_white.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_white" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_yellow.json b/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_yellow.json deleted file mode 100644 index f21996769..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/combat/smithing/default_anti_radiation_leggings_yellow.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_cloth": { - "conditions": { - "items": [ - { - "tag": "createnuclear:cloth" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smithing/default_anti_radiation_leggings_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_cloth", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smithing/default_anti_radiation_leggings_yellow" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/decorations/crafting/raw/raw_thorium_block.json b/src/generated/resources/data/createnuclear/advancements/recipes/decorations/crafting/raw/raw_thorium_block.json deleted file mode 100644 index eef051ea1..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/decorations/crafting/raw/raw_thorium_block.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_raw_materials_thorium": { - "conditions": { - "items": [ - { - "tag": "forge:raw_materials/thorium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/raw/raw_thorium_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_raw_materials_thorium", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/raw/raw_thorium_block" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json index b84799aac..c183b29e3 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/lead_ingot_for_lead_ore.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "forge:ores/lead" + "tag": "createnuclear:lead_ores" } ] }, diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json deleted file mode 100644 index 54f00179d..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:nitrate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:blasting/nitrogen_concentrate_for_nitrogen_concentrate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:blasting/nitrogen_concentrate_for_nitrogen_concentrate" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json index 16c0707ac..1f43dc31a 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/misc/blasting/raw_uranium_for_uranium_ore.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "forge:ores/uranium" + "tag": "createnuclear:uranium_ores" } ] }, diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/biome_irradiation_extractor.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/biome_irradiation_extractor.json deleted file mode 100644 index ffc2d3d66..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/biome_irradiation_extractor.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_reinforced_glass_bottle": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:reinforced_glass_bottle" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/biome_irradiation_extractor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_reinforced_glass_bottle", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/biome_irradiation_extractor" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/raw_thorium_from_decompacting.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/raw_thorium_from_decompacting.json deleted file mode 100644 index 8714d6c31..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/raw_thorium_from_decompacting.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_storage_blocks_raw_thorium": { - "conditions": { - "items": [ - { - "tag": "forge:storage_blocks/raw_thorium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/raw_thorium_from_decompacting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_storage_blocks_raw_thorium", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/raw_thorium_from_decompacting" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_block_from_compacting.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_block_from_compacting.json deleted file mode 100644 index 41395a7df..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_block_from_compacting.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_ingot" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/thorium_block_from_compacting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/thorium_block_from_compacting" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_compacting.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_compacting.json deleted file mode 100644 index 1a95a7462..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_compacting.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_nugget" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/thorium_ingot_from_compacting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/thorium_ingot_from_compacting" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_decompacting.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_decompacting.json deleted file mode 100644 index 371a7ecb8..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_ingot_from_decompacting.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_storage_blocks_thorium": { - "conditions": { - "items": [ - { - "tag": "forge:storage_blocks/thorium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/thorium_ingot_from_decompacting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_storage_blocks_thorium", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/thorium_ingot_from_decompacting" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_nugget_from_decompacting.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_nugget_from_decompacting.json deleted file mode 100644 index 59a82317c..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/crafting/thorium_nugget_from_decompacting.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_storage_blocks_steel_nugget": { - "conditions": { - "items": [ - { - "tag": "forge:ingots/thorium" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:crafting/thorium_nugget_from_decompacting" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_storage_blocks_steel_nugget", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:crafting/thorium_nugget_from_decompacting" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json index 41f985b73..ef898e54a 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/lead_ingot_for_lead_ore.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "forge:ores/lead" + "tag": "createnuclear:lead_ores" } ] }, diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json deleted file mode 100644 index 09ddb6b1f..000000000 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:nitrate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "createnuclear:smelting/nitrogen_concentrate_for_nitrogen_concentrate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "createnuclear:smelting/nitrogen_concentrate_for_nitrogen_concentrate" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json b/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json index de59f0e21..9546f8e86 100644 --- a/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json +++ b/src/generated/resources/data/createnuclear/advancements/recipes/misc/smelting/raw_uranium_for_uranium_ore.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "forge:ores/uranium" + "tag": "createnuclear:uranium_ores" } ] }, diff --git a/src/generated/resources/data/createnuclear/advancements/root.json b/src/generated/resources/data/createnuclear/advancements/root.json index 5bf588595..25c8d91c3 100644 --- a/src/generated/resources/data/createnuclear/advancements/root.json +++ b/src/generated/resources/data/createnuclear/advancements/root.json @@ -7,7 +7,7 @@ }, "display": { "announce_to_chat": false, - "background": "createnuclear:textures/gui/advancements/backgrounds/background_advancement.png", + "background": "createnuclear:textures/block/steel_block.png", "description": { "color": "#DBA213", "translate": "advancement.createnuclear.root.desc" diff --git a/src/generated/resources/data/createnuclear/advancements/silence_the_core.json b/src/generated/resources/data/createnuclear/advancements/silence_the_core.json deleted file mode 100644 index 9a043c6bf..000000000 --- a/src/generated/resources/data/createnuclear/advancements/silence_the_core.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:reactor_casing", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:silence_the_core_builtin" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.silence_the_core.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:reactor_alarm" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.silence_the_core" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/t1.json b/src/generated/resources/data/createnuclear/advancements/t1.json deleted file mode 100644 index a455a01fd..000000000 --- a/src/generated/resources/data/createnuclear/advancements/t1.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:reactor_controller", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:t1_builtin" - } - }, - "display": { - "announce_to_chat": true, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.t1.desc" - }, - "frame": "goal", - "hidden": false, - "icon": { - "item": "createnuclear:reactor_controller" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.t1" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/t2.json b/src/generated/resources/data/createnuclear/advancements/t2.json deleted file mode 100644 index f2b79c586..000000000 --- a/src/generated/resources/data/createnuclear/advancements/t2.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:t1", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:t2_builtin" - } - }, - "display": { - "announce_to_chat": true, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.t2.desc" - }, - "frame": "goal", - "hidden": false, - "icon": { - "item": "createnuclear:reactor_controller" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.t2" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/t3.json b/src/generated/resources/data/createnuclear/advancements/t3.json deleted file mode 100644 index 9ee16d3cb..000000000 --- a/src/generated/resources/data/createnuclear/advancements/t3.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parent": "createnuclear:t2", - "criteria": { - "0": { - "conditions": {}, - "trigger": "createnuclear:t3_builtin" - } - }, - "display": { - "announce_to_chat": true, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.t3.desc" - }, - "frame": "goal", - "hidden": false, - "icon": { - "item": "createnuclear:reactor_controller" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.t3" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/thorium_dust.json b/src/generated/resources/data/createnuclear/advancements/thorium_dust.json deleted file mode 100644 index 12edf0406..000000000 --- a/src/generated/resources/data/createnuclear/advancements/thorium_dust.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:raw_thorium", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.thorium_dust.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:thorium_dust" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.thorium_dust" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/thorium_ingot.json b/src/generated/resources/data/createnuclear/advancements/thorium_ingot.json deleted file mode 100644 index 24d367e92..000000000 --- a/src/generated/resources/data/createnuclear/advancements/thorium_ingot.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:thorium_liquid", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_ingot" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.thorium_ingot.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:thorium_ingot" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.thorium_ingot" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/thorium_liquid.json b/src/generated/resources/data/createnuclear/advancements/thorium_liquid.json deleted file mode 100644 index 9df58df6a..000000000 --- a/src/generated/resources/data/createnuclear/advancements/thorium_liquid.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:thorium_dust", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_bucket" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.thorium_liquid.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:thorium_bucket" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.thorium_liquid" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/advancements/thorium_rod.json b/src/generated/resources/data/createnuclear/advancements/thorium_rod.json deleted file mode 100644 index 8a9226505..000000000 --- a/src/generated/resources/data/createnuclear/advancements/thorium_rod.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parent": "createnuclear:thorium_ingot", - "criteria": { - "0": { - "conditions": { - "items": [ - { - "items": [ - "createnuclear:thorium_rod" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "description": { - "color": "#DBA213", - "translate": "advancement.createnuclear.thorium_rod.desc" - }, - "frame": "task", - "hidden": false, - "icon": { - "item": "createnuclear:thorium_rod" - }, - "show_toast": true, - "title": { - "translate": "advancement.createnuclear.thorium_rod" - } - }, - "requirements": [ - [ - "0" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/fallback.json b/src/generated/resources/data/createnuclear/createnuclear/fluids/type/fallback.json deleted file mode 100644 index ea208e24d..000000000 --- a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/fallback.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "efficiency": -1, - "fluid": "minecraft:empty", - "maxHeat": -1 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/nitrogen.json b/src/generated/resources/data/createnuclear/createnuclear/fluids/type/nitrogen.json deleted file mode 100644 index 62e15f99d..000000000 --- a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/nitrogen.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "efficiency": 100, - "fluid": "createnuclear:nitrogen", - "maxHeat": 8196 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/water.json b/src/generated/resources/data/createnuclear/createnuclear/fluids/type/water.json deleted file mode 100644 index 5a3ff5851..000000000 --- a/src/generated/resources/data/createnuclear/createnuclear/fluids/type/water.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "efficiency": 1000, - "fluid": "minecraft:water", - "maxHeat": 2048 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/createnuclear/rods/type/fallback.json b/src/generated/resources/data/createnuclear/createnuclear/rods/type/fallback.json deleted file mode 100644 index 57c68b48d..000000000 --- a/src/generated/resources/data/createnuclear/createnuclear/rods/type/fallback.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "type": "NONE", - "baseRodHeat": -1, - "item": "minecraft:air", - "proximityRodHeat": -1.0, - "rodTimer": -1 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/damage_type/fan_radiation.json b/src/generated/resources/data/createnuclear/damage_type/fan_radiation.json deleted file mode 100644 index 3e835918d..000000000 --- a/src/generated/resources/data/createnuclear/damage_type/fan_radiation.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "exhaustion": 0.0, - "message_id": "createnuclear.fan_radiation", - "scaling": "when_caused_by_living_non_player" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/damage_type/radiation.json b/src/generated/resources/data/createnuclear/damage_type/radiation.json deleted file mode 100644 index afbca531a..000000000 --- a/src/generated/resources/data/createnuclear/damage_type/radiation.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "exhaustion": 0.0, - "message_id": "createnuclear.radiation", - "scaling": "when_caused_by_living_non_player" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/forge/biome_modifier/nitrate_ore.json b/src/generated/resources/data/createnuclear/forge/biome_modifier/nitrate_ore.json deleted file mode 100644 index 93d40d505..000000000 --- a/src/generated/resources/data/createnuclear/forge/biome_modifier/nitrate_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "type": "forge:add_features", - "biomes": "#minecraft:is_overworld", - "features": "createnuclear:nitrate_ore", - "step": "underground_ores" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/forge/biome_modifier/thorium_ore.json b/src/generated/resources/data/createnuclear/forge/biome_modifier/thorium_ore.json deleted file mode 100644 index a73171cf4..000000000 --- a/src/generated/resources/data/createnuclear/forge/biome_modifier/thorium_ore.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "type": "forge:add_features", - "biomes": "#minecraft:is_overworld", - "features": "createnuclear:thorium_ore", - "step": "underground_ores" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json index 0f0097b66..7192930ea 100644 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json +++ b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_lead_ore.json @@ -29,22 +29,10 @@ { "type": "minecraft:item", "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, { "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 4 - } + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" }, { "function": "minecraft:explosion_decay" diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_nitrate_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_nitrate_ore.json deleted file mode 100644 index 68e7454f0..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_nitrate_ore.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ], - "name": "createnuclear:deepslate_nitrate_ore" - }, - { - "type": "minecraft:item", - "functions": [ - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "createnuclear:nitrate" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/deepslate_nitrate_ore" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_thorium_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_thorium_ore.json deleted file mode 100644 index 022ffce4c..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_thorium_ore.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ], - "name": "createnuclear:deepslate_thorium_ore" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 5.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 5 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "createnuclear:raw_thorium" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/deepslate_thorium_ore" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json index f0281cdcd..54ae2818a 100644 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json +++ b/src/generated/resources/data/createnuclear/loot_tables/blocks/deepslate_uranium_ore.json @@ -29,22 +29,10 @@ { "type": "minecraft:item", "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 3.0 - }, - "function": "minecraft:set_count" - }, { "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 1 - } + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" }, { "function": "minecraft:explosion_decay" diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/lead_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/lead_ore.json index ab97be78e..0a862a1d9 100644 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/lead_ore.json +++ b/src/generated/resources/data/createnuclear/loot_tables/blocks/lead_ore.json @@ -29,22 +29,10 @@ { "type": "minecraft:item", "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, { "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 4 - } + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" }, { "function": "minecraft:explosion_decay" diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/nitrate_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/nitrate_ore.json deleted file mode 100644 index ca030c723..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/nitrate_ore.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ], - "name": "createnuclear:nitrate_ore" - }, - { - "type": "minecraft:item", - "functions": [ - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "createnuclear:nitrate" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/nitrate_ore" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/raw_thorium_block.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/raw_thorium_block.json deleted file mode 100644 index cb40bb6af..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/raw_thorium_block.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "createnuclear:raw_thorium_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/raw_thorium_block" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_alarm.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_alarm.json deleted file mode 100644 index 3a46c7a09..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_alarm.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "createnuclear:reactor_alarm" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/reactor_alarm" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_fluid_input.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_fluid_input.json deleted file mode 100644 index 6fb4edd06..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_fluid_input.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "createnuclear:reactor_fluid_input" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/reactor_fluid_input" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_block.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_input.json similarity index 73% rename from src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_block.json rename to src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_input.json index 346c8684d..12d085210 100644 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_block.json +++ b/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_input.json @@ -11,11 +11,11 @@ "entries": [ { "type": "minecraft:item", - "name": "createnuclear:thorium_block" + "name": "createnuclear:reactor_input" } ], "rolls": 1.0 } ], - "random_sequence": "createnuclear:blocks/thorium_block" + "random_sequence": "createnuclear:blocks/reactor_input" } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_rod_input.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_rod_input.json deleted file mode 100644 index bc7116980..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/reactor_rod_input.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "createnuclear:reactor_rod_input" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/reactor_rod_input" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_ore.json deleted file mode 100644 index 059c3dbf3..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/thorium_ore.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ], - "name": "createnuclear:thorium_ore" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 5.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 5 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "createnuclear:raw_thorium" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "createnuclear:blocks/thorium_ore" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/loot_tables/blocks/uranium_ore.json b/src/generated/resources/data/createnuclear/loot_tables/blocks/uranium_ore.json index 621d0daa0..3cca83169 100644 --- a/src/generated/resources/data/createnuclear/loot_tables/blocks/uranium_ore.json +++ b/src/generated/resources/data/createnuclear/loot_tables/blocks/uranium_ore.json @@ -29,22 +29,10 @@ { "type": "minecraft:item", "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 3.0 - }, - "function": "minecraft:set_count" - }, { "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "function": "minecraft:apply_bonus", - "parameters": { - "bonusMultiplier": 1 - } + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" }, { "function": "minecraft:explosion_decay" diff --git a/src/generated/resources/data/createnuclear/loot_tables/entities/irradiated_cow.json b/src/generated/resources/data/createnuclear/loot_tables/entities/irradiated_cow.json deleted file mode 100644 index 43e6419a1..000000000 --- a/src/generated/resources/data/createnuclear/loot_tables/entities/irradiated_cow.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "minecraft:entity", - "random_sequence": "createnuclear:entities/irradiated_cow" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json b/src/generated/resources/data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json index 7bd43baf4..c23f6e805 100644 --- a/src/generated/resources/data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json +++ b/src/generated/resources/data/createnuclear/recipes/blasting/lead_ingot_for_lead_ore.json @@ -4,7 +4,7 @@ "cookingtime": 100, "experience": 0.1, "ingredient": { - "tag": "forge:ores/lead" + "tag": "createnuclear:lead_ores" }, "result": "createnuclear:lead_ingot" } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json b/src/generated/resources/data/createnuclear/recipes/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json deleted file mode 100644 index 5394b287d..000000000 --- a/src/generated/resources/data/createnuclear/recipes/blasting/nitrogen_concentrate_for_nitrogen_concentrate.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:blasting", - "category": "misc", - "cookingtime": 100, - "experience": 0.1, - "ingredient": { - "item": "createnuclear:nitrate" - }, - "result": "createnuclear:nitrogen_concentrate" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json b/src/generated/resources/data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json index 44017de5c..c170a2b90 100644 --- a/src/generated/resources/data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json +++ b/src/generated/resources/data/createnuclear/recipes/blasting/raw_uranium_for_uranium_ore.json @@ -4,7 +4,7 @@ "cookingtime": 100, "experience": 0.1, "ingredient": { - "tag": "forge:ores/uranium" + "tag": "createnuclear:uranium_ores" }, "result": "createnuclear:raw_uranium" } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/compacting/thorium_fluid_to_thorium_ingot.json b/src/generated/resources/data/createnuclear/recipes/compacting/thorium_fluid_to_thorium_ingot.json deleted file mode 100644 index 2bc6c7864..000000000 --- a/src/generated/resources/data/createnuclear/recipes/compacting/thorium_fluid_to_thorium_ingot.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "create:compacting", - "ingredients": [ - { - "amount": 200, - "fluidTag": "createnuclear:thorium" - } - ], - "results": [ - { - "item": "createnuclear:thorium_ingot" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/biome_irradiation_extractor.json b/src/generated/resources/data/createnuclear/recipes/crafting/biome_irradiation_extractor.json deleted file mode 100644 index 614a619fc..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/biome_irradiation_extractor.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "createnuclear:reinforced_glass_bottle" - }, - "S": { - "item": "minecraft:nether_star" - } - }, - "pattern": [ - "BBB", - "BSB", - "BBB" - ], - "result": { - "count": 8, - "item": "createnuclear:biome_irradiation_extractor" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_boots.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/anti_radiation_boots.json similarity index 72% rename from src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_boots.json rename to src/generated/resources/data/createnuclear/recipes/crafting/items/armors/anti_radiation_boots.json index 777e83f2c..35150c61b 100644 --- a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_boots.json +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/anti_radiation_boots.json @@ -6,7 +6,7 @@ "tag": "forge:ingots/lead" }, "Y": { - "tag": "forge:ingots/brass" + "item": "createnuclear:white_cloth" } }, "pattern": [ @@ -14,7 +14,7 @@ "X X" ], "result": { - "item": "createnuclear:default_anti_radiation_boots" + "item": "createnuclear:anti_radiation_boots" }, "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_chestplate.json new file mode 100644 index 000000000..d9073104d --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:black_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:black_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_helmet.json new file mode 100644 index 000000000..36bde71e9 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:black_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:black_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_leggings.json new file mode 100644 index 000000000..d6aff22ca --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/black_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:black_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:black_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..6f6c0c38a --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:blue_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:blue_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_helmet.json new file mode 100644 index 000000000..91fefbc14 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:blue_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:blue_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_leggings.json new file mode 100644 index 000000000..ccd90d07e --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/blue_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:blue_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:blue_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_chestplate.json new file mode 100644 index 000000000..9dcb4b2f8 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:brown_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:brown_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_helmet.json new file mode 100644 index 000000000..8e2aa2e46 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:brown_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:brown_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_leggings.json new file mode 100644 index 000000000..03b12752b --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/brown_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:brown_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:brown_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_chestplate.json new file mode 100644 index 000000000..0349e2332 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:cyan_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:cyan_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_helmet.json new file mode 100644 index 000000000..31a6f90f1 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:cyan_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:cyan_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_leggings.json new file mode 100644 index 000000000..b6e2185c0 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/cyan_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:cyan_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:cyan_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..20d987e9d --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:gray_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:gray_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_helmet.json new file mode 100644 index 000000000..94edf59fb --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:gray_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:gray_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_leggings.json new file mode 100644 index 000000000..a0b40ba6c --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/gray_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:gray_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:gray_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_chestplate.json new file mode 100644 index 000000000..9e7750eeb --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:green_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:green_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_helmet.json new file mode 100644 index 000000000..326ed348e --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:green_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:green_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_leggings.json new file mode 100644 index 000000000..d0151a022 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/green_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:green_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:green_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_chestplate.json new file mode 100644 index 000000000..96aa297c7 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_blue_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:light_blue_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_helmet.json new file mode 100644 index 000000000..9bcd4e3e7 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_blue_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:light_blue_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_leggings.json new file mode 100644 index 000000000..888a27c01 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_blue_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_blue_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:light_blue_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_chestplate.json new file mode 100644 index 000000000..1a35a6fe2 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_gray_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:light_gray_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_helmet.json new file mode 100644 index 000000000..ca2caaf8e --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_gray_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:light_gray_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_leggings.json new file mode 100644 index 000000000..4caa0ef60 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/light_gray_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:light_gray_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:light_gray_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_chestplate.json new file mode 100644 index 000000000..642c0f656 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:lime_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:lime_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_helmet.json new file mode 100644 index 000000000..fcab0ace7 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:lime_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:lime_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_leggings.json new file mode 100644 index 000000000..a6352d552 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/lime_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:lime_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:lime_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_chestplate.json new file mode 100644 index 000000000..705708eb4 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:magenta_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:magenta_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_helmet.json new file mode 100644 index 000000000..a2bd7f978 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:magenta_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:magenta_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_leggings.json new file mode 100644 index 000000000..3106d87bf --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/magenta_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:magenta_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:magenta_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_chestplate.json new file mode 100644 index 000000000..64b168fe6 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:orange_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:orange_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_helmet.json new file mode 100644 index 000000000..a9da8cb86 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:orange_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:orange_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_leggings.json new file mode 100644 index 000000000..f42ac77f2 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/orange_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:orange_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:orange_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_chestplate.json new file mode 100644 index 000000000..63191b246 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:pink_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:pink_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_helmet.json new file mode 100644 index 000000000..b4be9ae90 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:pink_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:pink_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_leggings.json new file mode 100644 index 000000000..266f30a10 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/pink_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:pink_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:pink_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_chestplate.json new file mode 100644 index 000000000..08be0f1b8 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:purple_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:purple_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_helmet.json new file mode 100644 index 000000000..5b8df04fa --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:purple_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:purple_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_leggings.json new file mode 100644 index 000000000..a60928b0e --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/purple_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:purple_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:purple_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_chestplate.json similarity index 76% rename from src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_chestplate.json rename to src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_chestplate.json index f5e0849f0..1f1f7b6c6 100644 --- a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_chestplate.json +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_chestplate.json @@ -6,7 +6,7 @@ "tag": "forge:ingots/lead" }, "Y": { - "tag": "forge:ingots/brass" + "item": "createnuclear:red_cloth" }, "Z": { "item": "createnuclear:graphite_rod" @@ -18,7 +18,7 @@ "ZXZ" ], "result": { - "item": "createnuclear:default_anti_radiation_chestplate" + "item": "createnuclear:red_anti_radiation_chestplate" }, "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_helmet.json similarity index 76% rename from src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_helmet.json rename to src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_helmet.json index 7919e5237..1cffa5a48 100644 --- a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_helmet.json +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_helmet.json @@ -6,7 +6,7 @@ "tag": "forge:ingots/lead" }, "Y": { - "tag": "forge:ingots/brass" + "item": "createnuclear:red_cloth" }, "Z": { "item": "createnuclear:reinforced_glass" @@ -17,7 +17,7 @@ "XZX" ], "result": { - "item": "createnuclear:default_anti_radiation_helmet" + "item": "createnuclear:red_anti_radiation_helmet" }, "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_leggings.json similarity index 72% rename from src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_leggings.json rename to src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_leggings.json index f92f44fb2..4e30f9ae5 100644 --- a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/default_anti_radiation_leggings.json +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/red_anti_radiation_leggings.json @@ -6,7 +6,7 @@ "tag": "forge:ingots/lead" }, "Y": { - "tag": "forge:ingots/brass" + "item": "createnuclear:red_cloth" } }, "pattern": [ @@ -15,7 +15,7 @@ "Y Y" ], "result": { - "item": "createnuclear:default_anti_radiation_leggings" + "item": "createnuclear:red_anti_radiation_leggings" }, "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_chestplate.json new file mode 100644 index 000000000..1e59e7be5 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:white_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:white_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_helmet.json new file mode 100644 index 000000000..b34562237 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:white_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:white_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_leggings.json new file mode 100644 index 000000000..746a84475 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/white_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:white_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:white_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_chestplate.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_chestplate.json new file mode 100644 index 000000000..a3974a4a3 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_chestplate.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:yellow_cloth" + }, + "Z": { + "item": "createnuclear:graphite_rod" + } + }, + "pattern": [ + "Y Y", + "XXX", + "ZXZ" + ], + "result": { + "item": "createnuclear:yellow_anti_radiation_chestplate" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_helmet.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_helmet.json new file mode 100644 index 000000000..93ff086e0 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_helmet.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:yellow_cloth" + }, + "Z": { + "item": "createnuclear:reinforced_glass" + } + }, + "pattern": [ + "YXY", + "XZX" + ], + "result": { + "item": "createnuclear:yellow_anti_radiation_helmet" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_leggings.json b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_leggings.json new file mode 100644 index 000000000..c912c258a --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crafting/items/armors/yellow_anti_radiation_leggings.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "X": { + "tag": "forge:ingots/lead" + }, + "Y": { + "item": "createnuclear:yellow_cloth" + } + }, + "pattern": [ + "YXY", + "X X", + "Y Y" + ], + "result": { + "item": "createnuclear:yellow_anti_radiation_leggings" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/raw/raw_thorium_block.json b/src/generated/resources/data/createnuclear/recipes/crafting/raw/raw_thorium_block.json deleted file mode 100644 index 96297fcdf..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/raw/raw_thorium_block.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "R": { - "tag": "forge:raw_materials/thorium" - } - }, - "pattern": [ - "RRR", - "RRR", - "RRR" - ], - "result": { - "item": "createnuclear:raw_thorium_block" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/raw_thorium_from_decompacting.json b/src/generated/resources/data/createnuclear/recipes/crafting/raw_thorium_from_decompacting.json deleted file mode 100644 index f2e1f2752..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/raw_thorium_from_decompacting.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "forge:storage_blocks/raw_thorium" - } - ], - "result": { - "count": 9, - "item": "createnuclear:raw_thorium" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/reinforced_glass_bottle.json b/src/generated/resources/data/createnuclear/recipes/crafting/reinforced_glass_bottle.json deleted file mode 100644 index 2fb590a3f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/reinforced_glass_bottle.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "G": { - "item": "createnuclear:reinforced_glass" - } - }, - "pattern": [ - "G G", - " G " - ], - "result": { - "count": 3, - "item": "createnuclear:reinforced_glass_bottle" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_block_from_compacting.json b/src/generated/resources/data/createnuclear/recipes/crafting/thorium_block_from_compacting.json deleted file mode 100644 index e7a4037c1..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_block_from_compacting.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "#": { - "tag": "forge:ingots/thorium" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "item": "createnuclear:thorium_block" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_compacting.json b/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_compacting.json deleted file mode 100644 index 09d7e66d4..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_compacting.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "#": { - "tag": "forge:nuggets/thorium" - } - }, - "pattern": [ - "###", - "###", - "###" - ], - "result": { - "item": "createnuclear:thorium_ingot" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_decompacting.json b/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_decompacting.json deleted file mode 100644 index 4c062d448..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_ingot_from_decompacting.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "forge:storage_blocks/thorium" - } - ], - "result": { - "count": 9, - "item": "createnuclear:thorium_ingot" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_nugget_from_decompacting.json b/src/generated/resources/data/createnuclear/recipes/crafting/thorium_nugget_from_decompacting.json deleted file mode 100644 index 4f664dd18..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crafting/thorium_nugget_from_decompacting.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "forge:ingots/thorium" - } - ], - "result": { - "count": 9, - "item": "createnuclear:thorium_nugget" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crushing/nitrate.json b/src/generated/resources/data/createnuclear/recipes/crushing/nitrate.json deleted file mode 100644 index 32ce6c228..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crushing/nitrate.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "create:crushing", - "ingredients": [ - { - "tag": "create:stone_types/limestone" - } - ], - "processingTime": 250, - "results": [ - { - "chance": 0.6, - "item": "createnuclear:nitrate" - }, - { - "chance": 0.4, - "item": "createnuclear:lead_nugget" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium.json b/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium.json deleted file mode 100644 index 618069e91..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "create:crushing", - "ingredients": [ - { - "item": "createnuclear:raw_thorium" - } - ], - "processingTime": 125, - "results": [ - { - "item": "createnuclear:thorium_dust" - }, - { - "chance": 0.75, - "item": "create:experience_nugget" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium_block.json b/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium_block.json deleted file mode 100644 index b786a807f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/crushing/raw_thorium_block.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "create:crushing", - "ingredients": [ - { - "item": "createnuclear:raw_thorium_block" - } - ], - "processingTime": 250, - "results": [ - { - "count": 9, - "item": "createnuclear:thorium_dust" - }, - { - "chance": 0.75, - "count": 9, - "item": "create:experience_nugget" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/crushing/raw_uranium_block.json b/src/generated/resources/data/createnuclear/recipes/crushing/raw_uranium_block.json new file mode 100644 index 000000000..d029985c6 --- /dev/null +++ b/src/generated/resources/data/createnuclear/recipes/crushing/raw_uranium_block.json @@ -0,0 +1,15 @@ +{ + "type": "create:crushing", + "ingredients": [ + { + "item": "createnuclear:raw_uranium_block" + } + ], + "processingTime": 250, + "results": [ + { + "count": 81, + "item": "createnuclear:uranium_powder" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_fluid_input_from_fluid_pipe_and_reactor_casing.json b/src/generated/resources/data/createnuclear/recipes/deploying/reactor_fluid_input_from_fluid_pipe_and_reactor_casing.json deleted file mode 100644 index c7a3c9643..000000000 --- a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_fluid_input_from_fluid_pipe_and_reactor_casing.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "create:deploying", - "ingredients": [ - { - "item": "createnuclear:reactor_casing" - }, - { - "item": "create:fluid_pipe" - } - ], - "results": [ - { - "item": "createnuclear:reactor_fluid_input" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_rod_input_from_hopper_and_reactor_casing.json b/src/generated/resources/data/createnuclear/recipes/item_application/reactor_input_from_hopper_and_reactor_casing.json similarity index 66% rename from src/generated/resources/data/createnuclear/recipes/deploying/reactor_rod_input_from_hopper_and_reactor_casing.json rename to src/generated/resources/data/createnuclear/recipes/item_application/reactor_input_from_hopper_and_reactor_casing.json index e0d05ca41..f5690f240 100644 --- a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_rod_input_from_hopper_and_reactor_casing.json +++ b/src/generated/resources/data/createnuclear/recipes/item_application/reactor_input_from_hopper_and_reactor_casing.json @@ -1,5 +1,5 @@ { - "type": "create:deploying", + "type": "create:item_application", "ingredients": [ { "item": "createnuclear:reactor_casing" @@ -10,7 +10,7 @@ ], "results": [ { - "item": "createnuclear:reactor_rod_input" + "item": "createnuclear:reactor_input" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_output_from_shaft_and_reactor_casing.json b/src/generated/resources/data/createnuclear/recipes/item_application/reactor_output_from_shaft_and_reactor_casing.json similarity index 84% rename from src/generated/resources/data/createnuclear/recipes/deploying/reactor_output_from_shaft_and_reactor_casing.json rename to src/generated/resources/data/createnuclear/recipes/item_application/reactor_output_from_shaft_and_reactor_casing.json index c31c429f2..9a1e6c116 100644 --- a/src/generated/resources/data/createnuclear/recipes/deploying/reactor_output_from_shaft_and_reactor_casing.json +++ b/src/generated/resources/data/createnuclear/recipes/item_application/reactor_output_from_shaft_and_reactor_casing.json @@ -1,5 +1,5 @@ { - "type": "create:deploying", + "type": "create:item_application", "ingredients": [ { "item": "createnuclear:reactor_casing" diff --git a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_alarm.json b/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_alarm.json deleted file mode 100644 index 01ad04cb0..000000000 --- a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_alarm.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "create:mechanical_crafting", - "acceptMirrored": true, - "key": { - "C": { - "item": "createnuclear:reactor_casing" - }, - "L": { - "item": "minecraft:clock" - }, - "N": { - "item": "minecraft:note_block" - }, - "R": { - "item": "minecraft:repeater" - } - }, - "pattern": [ - "CCCCC", - "CNRNC", - "CRLRC", - "CNRNC", - "CCCCC" - ], - "result": { - "item": "createnuclear:reactor_alarm" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_frame.json b/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_frame.json index c29d711a2..a9e6a52b0 100644 --- a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_frame.json +++ b/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/reactor_frame.json @@ -3,7 +3,7 @@ "acceptMirrored": true, "key": { "B": { - "item": "minecraft:bucket" + "item": "createnuclear:uranium_bucket" }, "C": { "item": "createnuclear:reactor_casing" diff --git a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/thorium_rod.json b/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/thorium_rod.json deleted file mode 100644 index 67d1df6ad..000000000 --- a/src/generated/resources/data/createnuclear/recipes/mechanical_crafting/thorium_rod.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "create:mechanical_crafting", - "acceptMirrored": true, - "key": { - "U": { - "item": "createnuclear:thorium_ingot" - } - }, - "pattern": [ - "U ", - " U ", - " U ", - " U ", - " U" - ], - "result": { - "item": "createnuclear:thorium_rod" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/mixing/liquid_nitrogen.json b/src/generated/resources/data/createnuclear/recipes/mixing/liquid_nitrogen.json deleted file mode 100644 index 6ff529926..000000000 --- a/src/generated/resources/data/createnuclear/recipes/mixing/liquid_nitrogen.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "create:mixing", - "ingredients": [ - { - "item": "createnuclear:cooled_nitrogen_concentrate" - }, - { - "item": "minecraft:ice" - } - ], - "processingTime": 20, - "results": [ - { - "amount": 100, - "fluid": "createnuclear:nitrogen" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/mixing/thorium_fluid.json b/src/generated/resources/data/createnuclear/recipes/mixing/thorium_fluid.json deleted file mode 100644 index 0644f8ef9..000000000 --- a/src/generated/resources/data/createnuclear/recipes/mixing/thorium_fluid.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "create:mixing", - "heatRequirement": "heated", - "ingredients": [ - { - "tag": "forge:dusts/thorium" - } - ], - "results": [ - { - "amount": 25, - "fluid": "createnuclear:thorium" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/pressing/graphene.json b/src/generated/resources/data/createnuclear/recipes/pressing/graphene.json index fa8ccf09e..36907359f 100644 --- a/src/generated/resources/data/createnuclear/recipes/pressing/graphene.json +++ b/src/generated/resources/data/createnuclear/recipes/pressing/graphene.json @@ -2,7 +2,7 @@ "type": "create:pressing", "ingredients": [ { - "tag": "forge:dusts/coal" + "tag": "forge:coal_dusts" } ], "results": [ diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/black_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/black_cloth.json index 823df2871..c97772dba 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/black_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/black_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:black_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/blue_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/blue_cloth.json index 338c24c00..7a88326c0 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/blue_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/blue_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:blue_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/brown_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/brown_cloth.json index b7fade830..7c298c77d 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/brown_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/brown_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:brown_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json index eec2232ea..ea1f9bb70 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/cyan_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:cyan_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/gray_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/gray_cloth.json index 02839f6be..2a9a51800 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/gray_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/gray_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:gray_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/green_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/green_cloth.json index ac547d0e1..9de6a6ef1 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/green_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/green_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:green_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json index d7a5328f9..b650ceded 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_blue_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:light_blue_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json index 659206ecb..7ad40ccc3 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/light_gray_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:light_gray_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/lime_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/lime_cloth.json index de11efb5b..5f5fed5fd 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/lime_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/lime_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:lime_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json index 24afa28df..d150ae229 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/magenta_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:magenta_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/orange_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/orange_cloth.json index 3cd48ac66..7e4cf94bc 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/orange_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/orange_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:orange_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/pink_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/pink_cloth.json index 641842e45..4274a3aed 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/pink_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/pink_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:pink_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/purple_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/purple_cloth.json index a5c906354..ccedaffe8 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/purple_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/purple_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:purple_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/red_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/red_cloth.json index 3d8bc1cf1..71820997b 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/red_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/red_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:red_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/white_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/white_cloth.json index 94e55ede0..f479aa894 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/white_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/white_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:yellow_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:white_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json index 9d97f8ab1..34bda8f14 100644 --- a/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json +++ b/src/generated/resources/data/createnuclear/recipes/shapeless/cloth/yellow_cloth.json @@ -2,53 +2,9 @@ "type": "minecraft:crafting_shapeless", "category": "building", "ingredients": [ - [ - { - "item": "createnuclear:white_cloth" - }, - { - "item": "createnuclear:orange_cloth" - }, - { - "item": "createnuclear:magenta_cloth" - }, - { - "item": "createnuclear:light_blue_cloth" - }, - { - "item": "createnuclear:lime_cloth" - }, - { - "item": "createnuclear:pink_cloth" - }, - { - "item": "createnuclear:gray_cloth" - }, - { - "item": "createnuclear:light_gray_cloth" - }, - { - "item": "createnuclear:cyan_cloth" - }, - { - "item": "createnuclear:purple_cloth" - }, - { - "item": "createnuclear:blue_cloth" - }, - { - "item": "createnuclear:brown_cloth" - }, - { - "item": "createnuclear:green_cloth" - }, - { - "item": "createnuclear:red_cloth" - }, - { - "item": "createnuclear:black_cloth" - } - ], + { + "tag": "createnuclear:cloth" + }, { "item": "minecraft:yellow_dye" } diff --git a/src/generated/resources/data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json b/src/generated/resources/data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json index 01b3b0586..16a522a60 100644 --- a/src/generated/resources/data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json +++ b/src/generated/resources/data/createnuclear/recipes/smelting/lead_ingot_for_lead_ore.json @@ -4,7 +4,7 @@ "cookingtime": 200, "experience": 0.1, "ingredient": { - "tag": "forge:ores/lead" + "tag": "createnuclear:lead_ores" }, "result": "createnuclear:lead_ingot" } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json b/src/generated/resources/data/createnuclear/recipes/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json deleted file mode 100644 index ebc4487cb..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smelting/nitrogen_concentrate_for_nitrogen_concentrate.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:smelting", - "category": "misc", - "cookingtime": 200, - "experience": 0.1, - "ingredient": { - "item": "createnuclear:nitrate" - }, - "result": "createnuclear:nitrogen_concentrate" -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json b/src/generated/resources/data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json index 52e1f3802..f415f6865 100644 --- a/src/generated/resources/data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json +++ b/src/generated/resources/data/createnuclear/recipes/smelting/raw_uranium_for_uranium_ore.json @@ -4,7 +4,7 @@ "cookingtime": 200, "experience": 0.1, "ingredient": { - "tag": "forge:ores/uranium" + "tag": "createnuclear:uranium_ores" }, "result": "createnuclear:raw_uranium" } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_black.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_black.json deleted file mode 100644 index 08dd6c708..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_black.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:black_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_blue.json deleted file mode 100644 index e10c632c1..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_brown.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_brown.json deleted file mode 100644 index 13f449654..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_brown.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:brown_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_cyan.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_cyan.json deleted file mode 100644 index f912b68f3..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_cyan.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:cyan_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_gray.json deleted file mode 100644 index 26a7ca699..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_green.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_green.json deleted file mode 100644 index 5d9b75741..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_green.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:green_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_blue.json deleted file mode 100644 index 0175d16d7..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_gray.json deleted file mode 100644 index b286f3fe1..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_light_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_lime.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_lime.json deleted file mode 100644 index 057cb5b51..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_lime.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:lime_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_magenta.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_magenta.json deleted file mode 100644 index dcb976d9e..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_magenta.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:magenta_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_orange.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_orange.json deleted file mode 100644 index 47bca1d1f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_orange.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:orange_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_pink.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_pink.json deleted file mode 100644 index 77a133874..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_pink.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:pink_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_purple.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_purple.json deleted file mode 100644 index dcb5e6e41..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_purple.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:purple_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_red.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_red.json deleted file mode 100644 index c1332872f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_red.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:red_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_white.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_white.json deleted file mode 100644 index 1d60f3acb..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_white.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:white_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_yellow.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_yellow.json deleted file mode 100644 index 01743d9dd..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_boots_yellow.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:yellow_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "result": { - "item": "createnuclear:default_anti_radiation_boots" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_black.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_black.json deleted file mode 100644 index f5a18e020..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_black.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:black_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_blue.json deleted file mode 100644 index a8f7c288c..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_brown.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_brown.json deleted file mode 100644 index 1e620a39a..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_brown.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:brown_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_cyan.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_cyan.json deleted file mode 100644 index 08aad7082..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_cyan.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:cyan_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_gray.json deleted file mode 100644 index d2f2e0fb3..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_green.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_green.json deleted file mode 100644 index da9e63648..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_green.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:green_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_blue.json deleted file mode 100644 index a173eea3b..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_gray.json deleted file mode 100644 index 733310dc5..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_light_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_lime.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_lime.json deleted file mode 100644 index 9d4b92e72..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_lime.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:lime_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_magenta.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_magenta.json deleted file mode 100644 index 21a0ab1ba..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_magenta.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:magenta_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_orange.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_orange.json deleted file mode 100644 index 2d6bf0abb..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_orange.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:orange_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_pink.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_pink.json deleted file mode 100644 index a0bcca31f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_pink.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:pink_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_purple.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_purple.json deleted file mode 100644 index 204df48d7..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_purple.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:purple_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_red.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_red.json deleted file mode 100644 index 69245a251..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_red.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:red_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_white.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_white.json deleted file mode 100644 index bf6b8a76b..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_white.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:white_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_yellow.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_yellow.json deleted file mode 100644 index 1481cf6a8..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_chestplate_yellow.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:yellow_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "result": { - "item": "createnuclear:default_anti_radiation_chestplate" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_black.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_black.json deleted file mode 100644 index 79878e39b..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_black.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:black_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_blue.json deleted file mode 100644 index 947fd93f5..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_brown.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_brown.json deleted file mode 100644 index 95938e487..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_brown.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:brown_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_cyan.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_cyan.json deleted file mode 100644 index 5f09f7a5e..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_cyan.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:cyan_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_gray.json deleted file mode 100644 index e9a96e535..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_green.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_green.json deleted file mode 100644 index c540f3aee..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_green.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:green_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_blue.json deleted file mode 100644 index 15fc52bec..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_gray.json deleted file mode 100644 index 940c43aa7..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_light_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_lime.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_lime.json deleted file mode 100644 index f13239a2a..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_lime.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:lime_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_magenta.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_magenta.json deleted file mode 100644 index 289fc132a..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_magenta.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:magenta_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_orange.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_orange.json deleted file mode 100644 index d97403f5a..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_orange.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:orange_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_pink.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_pink.json deleted file mode 100644 index a10c4fddf..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_pink.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:pink_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_purple.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_purple.json deleted file mode 100644 index e1e2c7045..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_purple.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:purple_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_red.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_red.json deleted file mode 100644 index eba00e9cb..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_red.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:red_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_white.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_white.json deleted file mode 100644 index 3871c3671..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_white.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:white_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_yellow.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_yellow.json deleted file mode 100644 index 5df191a23..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_helmet_yellow.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:yellow_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "result": { - "item": "createnuclear:default_anti_radiation_helmet" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_black.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_black.json deleted file mode 100644 index 9bb698db8..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_black.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:black_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_blue.json deleted file mode 100644 index 8bdff4a93..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_brown.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_brown.json deleted file mode 100644 index d3c07626f..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_brown.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:brown_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_cyan.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_cyan.json deleted file mode 100644 index 7d98d23cc..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_cyan.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:cyan_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_gray.json deleted file mode 100644 index e49483955..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_green.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_green.json deleted file mode 100644 index 6f26f2f10..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_green.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:green_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_blue.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_blue.json deleted file mode 100644 index 8c4b82ce0..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_blue.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_blue_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_gray.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_gray.json deleted file mode 100644 index bec1f0c26..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_light_gray.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:light_gray_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_lime.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_lime.json deleted file mode 100644 index cb143eb62..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_lime.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:lime_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_magenta.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_magenta.json deleted file mode 100644 index f678d8916..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_magenta.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:magenta_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_orange.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_orange.json deleted file mode 100644 index d4d07fc15..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_orange.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:orange_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_pink.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_pink.json deleted file mode 100644 index 6ecf4943d..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_pink.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:pink_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_purple.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_purple.json deleted file mode 100644 index 971de2e58..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_purple.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:purple_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_red.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_red.json deleted file mode 100644 index 1a19ec2aa..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_red.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:red_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_white.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_white.json deleted file mode 100644 index 98f0a7ff6..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_white.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:white_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_yellow.json b/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_yellow.json deleted file mode 100644 index 0793fab95..000000000 --- a/src/generated/resources/data/createnuclear/recipes/smithing/default_anti_radiation_leggings_yellow.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:smithing_transform", - "addition": { - "item": "createnuclear:yellow_cloth" - }, - "base": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "result": { - "item": "createnuclear:default_anti_radiation_leggings" - }, - "template": [] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/recipes/snow_powder/cooled_nitrogen_concentrate.json b/src/generated/resources/data/createnuclear/recipes/snow_powder/cooled_nitrogen_concentrate.json deleted file mode 100644 index 0f0733b80..000000000 --- a/src/generated/resources/data/createnuclear/recipes/snow_powder/cooled_nitrogen_concentrate.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "createnuclear:snow_powder", - "ingredients": [ - { - "item": "createnuclear:nitrogen_concentrate" - } - ], - "results": [ - { - "item": "createnuclear:cooled_nitrogen_concentrate" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/blocks/fan_processing_catalysts/snow_powder.json b/src/generated/resources/data/createnuclear/tags/blocks/fan_processing_catalysts/snow_powder.json deleted file mode 100644 index 38b8ecdb5..000000000 --- a/src/generated/resources/data/createnuclear/tags/blocks/fan_processing_catalysts/snow_powder.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:powder_snow" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/blocks/lead_ores.json b/src/generated/resources/data/createnuclear/tags/blocks/lead_ores.json new file mode 100644 index 000000000..e456059a9 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/blocks/lead_ores.json @@ -0,0 +1,6 @@ +{ + "values": [ + "createnuclear:deepslate_lead_ore", + "createnuclear:lead_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/blocks/uranium_ores.json b/src/generated/resources/data/createnuclear/tags/blocks/uranium_ores.json new file mode 100644 index 000000000..548841c41 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/blocks/uranium_ores.json @@ -0,0 +1,6 @@ +{ + "values": [ + "createnuclear:deepslate_uranium_ore", + "createnuclear:uranium_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/entity_types/irradiated_immune.json b/src/generated/resources/data/createnuclear/tags/entity_types/irradiated_immune.json index e21140dfe..c12810e47 100644 --- a/src/generated/resources/data/createnuclear/tags/entity_types/irradiated_immune.json +++ b/src/generated/resources/data/createnuclear/tags/entity_types/irradiated_immune.json @@ -2,7 +2,6 @@ "values": [ "createnuclear:irradiated_cat", "createnuclear:irradiated_chicken", - "createnuclear:irradiated_wolf", - "createnuclear:irradiated_cow" + "createnuclear:irradiated_wolf" ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/fluids/nitrogen.json b/src/generated/resources/data/createnuclear/tags/fluids/nitrogen.json deleted file mode 100644 index 027a7f71c..000000000 --- a/src/generated/resources/data/createnuclear/tags/fluids/nitrogen.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:flowing_nitrogen", - "createnuclear:nitrogen" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/fluids/thorium.json b/src/generated/resources/data/createnuclear/tags/fluids/thorium.json deleted file mode 100644 index b1583ad25..000000000 --- a/src/generated/resources/data/createnuclear/tags/fluids/thorium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:flowing_thorium", - "createnuclear:thorium" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/all_anti_radiation_armors.json b/src/generated/resources/data/createnuclear/tags/items/all_anti_radiation_armors.json index f72d209df..4151900fa 100644 --- a/src/generated/resources/data/createnuclear/tags/items/all_anti_radiation_armors.json +++ b/src/generated/resources/data/createnuclear/tags/items/all_anti_radiation_armors.json @@ -1,3 +1,53 @@ { - "values": [] + "values": [ + "createnuclear:white_anti_radiation_helmet", + "createnuclear:orange_anti_radiation_helmet", + "createnuclear:magenta_anti_radiation_helmet", + "createnuclear:light_blue_anti_radiation_helmet", + "createnuclear:yellow_anti_radiation_helmet", + "createnuclear:lime_anti_radiation_helmet", + "createnuclear:pink_anti_radiation_helmet", + "createnuclear:gray_anti_radiation_helmet", + "createnuclear:light_gray_anti_radiation_helmet", + "createnuclear:cyan_anti_radiation_helmet", + "createnuclear:purple_anti_radiation_helmet", + "createnuclear:blue_anti_radiation_helmet", + "createnuclear:brown_anti_radiation_helmet", + "createnuclear:green_anti_radiation_helmet", + "createnuclear:red_anti_radiation_helmet", + "createnuclear:black_anti_radiation_helmet", + "createnuclear:white_anti_radiation_chestplate", + "createnuclear:orange_anti_radiation_chestplate", + "createnuclear:magenta_anti_radiation_chestplate", + "createnuclear:light_blue_anti_radiation_chestplate", + "createnuclear:yellow_anti_radiation_chestplate", + "createnuclear:lime_anti_radiation_chestplate", + "createnuclear:pink_anti_radiation_chestplate", + "createnuclear:gray_anti_radiation_chestplate", + "createnuclear:light_gray_anti_radiation_chestplate", + "createnuclear:cyan_anti_radiation_chestplate", + "createnuclear:purple_anti_radiation_chestplate", + "createnuclear:blue_anti_radiation_chestplate", + "createnuclear:brown_anti_radiation_chestplate", + "createnuclear:green_anti_radiation_chestplate", + "createnuclear:red_anti_radiation_chestplate", + "createnuclear:black_anti_radiation_chestplate", + "createnuclear:white_anti_radiation_leggings", + "createnuclear:orange_anti_radiation_leggings", + "createnuclear:magenta_anti_radiation_leggings", + "createnuclear:light_blue_anti_radiation_leggings", + "createnuclear:yellow_anti_radiation_leggings", + "createnuclear:lime_anti_radiation_leggings", + "createnuclear:pink_anti_radiation_leggings", + "createnuclear:gray_anti_radiation_leggings", + "createnuclear:light_gray_anti_radiation_leggings", + "createnuclear:cyan_anti_radiation_leggings", + "createnuclear:purple_anti_radiation_leggings", + "createnuclear:blue_anti_radiation_leggings", + "createnuclear:brown_anti_radiation_leggings", + "createnuclear:green_anti_radiation_leggings", + "createnuclear:red_anti_radiation_leggings", + "createnuclear:black_anti_radiation_leggings", + "createnuclear:anti_radiation_boots" + ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_armor.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_armor.json index 0fdc0c126..ae448c5b6 100644 --- a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_armor.json +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_armor.json @@ -1,8 +1,8 @@ { "values": [ - "createnuclear:default_anti_radiation_helmet", - "createnuclear:default_anti_radiation_chestplate", - "createnuclear:default_anti_radiation_leggings", - "createnuclear:default_anti_radiation_boots" + "createnuclear:white_anti_radiation_helmet", + "createnuclear:white_anti_radiation_chestplate", + "createnuclear:white_anti_radiation_leggings", + "createnuclear:anti_radiation_boots" ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_boots_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_boots_dye.json new file mode 100644 index 000000000..3e6a77536 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_boots_dye.json @@ -0,0 +1,5 @@ +{ + "values": [ + "createnuclear:anti_radiation_boots" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_dye.json new file mode 100644 index 000000000..a1ac43a95 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_dye.json @@ -0,0 +1,19 @@ +{ + "values": [ + "createnuclear:orange_anti_radiation_chestplate", + "createnuclear:magenta_anti_radiation_chestplate", + "createnuclear:light_blue_anti_radiation_chestplate", + "createnuclear:yellow_anti_radiation_chestplate", + "createnuclear:lime_anti_radiation_chestplate", + "createnuclear:pink_anti_radiation_chestplate", + "createnuclear:gray_anti_radiation_chestplate", + "createnuclear:light_gray_anti_radiation_chestplate", + "createnuclear:cyan_anti_radiation_chestplate", + "createnuclear:purple_anti_radiation_chestplate", + "createnuclear:blue_anti_radiation_chestplate", + "createnuclear:brown_anti_radiation_chestplate", + "createnuclear:green_anti_radiation_chestplate", + "createnuclear:red_anti_radiation_chestplate", + "createnuclear:black_anti_radiation_chestplate" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_full_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_full_dye.json new file mode 100644 index 000000000..8b659b88b --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_chestplate_full_dye.json @@ -0,0 +1,20 @@ +{ + "values": [ + "createnuclear:white_anti_radiation_chestplate", + "createnuclear:orange_anti_radiation_chestplate", + "createnuclear:magenta_anti_radiation_chestplate", + "createnuclear:light_blue_anti_radiation_chestplate", + "createnuclear:yellow_anti_radiation_chestplate", + "createnuclear:lime_anti_radiation_chestplate", + "createnuclear:pink_anti_radiation_chestplate", + "createnuclear:gray_anti_radiation_chestplate", + "createnuclear:light_gray_anti_radiation_chestplate", + "createnuclear:cyan_anti_radiation_chestplate", + "createnuclear:purple_anti_radiation_chestplate", + "createnuclear:blue_anti_radiation_chestplate", + "createnuclear:brown_anti_radiation_chestplate", + "createnuclear:green_anti_radiation_chestplate", + "createnuclear:red_anti_radiation_chestplate", + "createnuclear:black_anti_radiation_chestplate" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_dye.json new file mode 100644 index 000000000..7e34cb083 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_dye.json @@ -0,0 +1,19 @@ +{ + "values": [ + "createnuclear:orange_anti_radiation_helmet", + "createnuclear:magenta_anti_radiation_helmet", + "createnuclear:light_blue_anti_radiation_helmet", + "createnuclear:yellow_anti_radiation_helmet", + "createnuclear:lime_anti_radiation_helmet", + "createnuclear:pink_anti_radiation_helmet", + "createnuclear:gray_anti_radiation_helmet", + "createnuclear:light_gray_anti_radiation_helmet", + "createnuclear:cyan_anti_radiation_helmet", + "createnuclear:purple_anti_radiation_helmet", + "createnuclear:blue_anti_radiation_helmet", + "createnuclear:brown_anti_radiation_helmet", + "createnuclear:green_anti_radiation_helmet", + "createnuclear:red_anti_radiation_helmet", + "createnuclear:black_anti_radiation_helmet" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_full_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_full_dye.json new file mode 100644 index 000000000..7d378f7fa --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_helmet_full_dye.json @@ -0,0 +1,20 @@ +{ + "values": [ + "createnuclear:white_anti_radiation_helmet", + "createnuclear:orange_anti_radiation_helmet", + "createnuclear:magenta_anti_radiation_helmet", + "createnuclear:light_blue_anti_radiation_helmet", + "createnuclear:yellow_anti_radiation_helmet", + "createnuclear:lime_anti_radiation_helmet", + "createnuclear:pink_anti_radiation_helmet", + "createnuclear:gray_anti_radiation_helmet", + "createnuclear:light_gray_anti_radiation_helmet", + "createnuclear:cyan_anti_radiation_helmet", + "createnuclear:purple_anti_radiation_helmet", + "createnuclear:blue_anti_radiation_helmet", + "createnuclear:brown_anti_radiation_helmet", + "createnuclear:green_anti_radiation_helmet", + "createnuclear:red_anti_radiation_helmet", + "createnuclear:black_anti_radiation_helmet" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_dye.json new file mode 100644 index 000000000..155da4963 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_dye.json @@ -0,0 +1,19 @@ +{ + "values": [ + "createnuclear:orange_anti_radiation_leggings", + "createnuclear:magenta_anti_radiation_leggings", + "createnuclear:light_blue_anti_radiation_leggings", + "createnuclear:yellow_anti_radiation_leggings", + "createnuclear:lime_anti_radiation_leggings", + "createnuclear:pink_anti_radiation_leggings", + "createnuclear:gray_anti_radiation_leggings", + "createnuclear:light_gray_anti_radiation_leggings", + "createnuclear:cyan_anti_radiation_leggings", + "createnuclear:purple_anti_radiation_leggings", + "createnuclear:blue_anti_radiation_leggings", + "createnuclear:brown_anti_radiation_leggings", + "createnuclear:green_anti_radiation_leggings", + "createnuclear:red_anti_radiation_leggings", + "createnuclear:black_anti_radiation_leggings" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_full_dye.json b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_full_dye.json new file mode 100644 index 000000000..ea2384340 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/anti_radiation_leggings_full_dye.json @@ -0,0 +1,20 @@ +{ + "values": [ + "createnuclear:white_anti_radiation_leggings", + "createnuclear:orange_anti_radiation_leggings", + "createnuclear:magenta_anti_radiation_leggings", + "createnuclear:light_blue_anti_radiation_leggings", + "createnuclear:yellow_anti_radiation_leggings", + "createnuclear:lime_anti_radiation_leggings", + "createnuclear:pink_anti_radiation_leggings", + "createnuclear:gray_anti_radiation_leggings", + "createnuclear:light_gray_anti_radiation_leggings", + "createnuclear:cyan_anti_radiation_leggings", + "createnuclear:purple_anti_radiation_leggings", + "createnuclear:blue_anti_radiation_leggings", + "createnuclear:brown_anti_radiation_leggings", + "createnuclear:green_anti_radiation_leggings", + "createnuclear:red_anti_radiation_leggings", + "createnuclear:black_anti_radiation_leggings" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/fuel.json b/src/generated/resources/data/createnuclear/tags/items/fuel.json index 9efea370f..951757d99 100644 --- a/src/generated/resources/data/createnuclear/tags/items/fuel.json +++ b/src/generated/resources/data/createnuclear/tags/items/fuel.json @@ -1,6 +1,5 @@ { "values": [ - "createnuclear:uranium_rod", - "createnuclear:thorium_rod" + "createnuclear:uranium_rod" ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/lead_ores.json b/src/generated/resources/data/createnuclear/tags/items/lead_ores.json new file mode 100644 index 000000000..e456059a9 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/lead_ores.json @@ -0,0 +1,6 @@ +{ + "values": [ + "createnuclear:deepslate_lead_ore", + "createnuclear:lead_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/tags/items/uranium_ores.json b/src/generated/resources/data/createnuclear/tags/items/uranium_ores.json new file mode 100644 index 000000000..548841c41 --- /dev/null +++ b/src/generated/resources/data/createnuclear/tags/items/uranium_ores.json @@ -0,0 +1,6 @@ +{ + "values": [ + "createnuclear:deepslate_uranium_ore", + "createnuclear:uranium_ore" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/biome/irradiated_land.json b/src/generated/resources/data/createnuclear/worldgen/biome/irradiated_land.json deleted file mode 100644 index c69706c5f..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/biome/irradiated_land.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "carvers": {}, - "downfall": 0.0, - "effects": { - "ambient_sound": "createnuclear:biomes/wasteland", - "fog_color": 4742718, - "foliage_color": 5660222, - "grass_color": 9211739, - "mood_sound": { - "block_search_extent": 8, - "offset": 2.0, - "sound": "minecraft:ambient.cave", - "tick_delay": 6000 - }, - "particle": { - "options": { - "type": "createnuclear:irradiated_particles", - "t": 0 - }, - "probability": 0.025 - }, - "sky_color": 3293490, - "water_color": 3887411, - "water_fog_color": 658954 - }, - "features": [], - "has_precipitation": false, - "spawn_costs": {}, - "spawners": { - "ambient": [], - "axolotls": [], - "creature": [], - "misc": [], - "monster": [], - "underground_water_creature": [], - "water_ambient": [], - "water_creature": [] - }, - "temperature": 2.0 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/configured_feature/lead_ore.json b/src/generated/resources/data/createnuclear/worldgen/configured_feature/lead_ore.json index 1825d43f7..75f7246f9 100644 --- a/src/generated/resources/data/createnuclear/worldgen/configured_feature/lead_ore.json +++ b/src/generated/resources/data/createnuclear/worldgen/configured_feature/lead_ore.json @@ -2,7 +2,7 @@ "type": "minecraft:ore", "config": { "discard_chance_on_air_exposure": 0.0, - "size": 12, + "size": 7, "targets": [ { "state": { diff --git a/src/generated/resources/data/createnuclear/worldgen/configured_feature/nitrate_ore.json b/src/generated/resources/data/createnuclear/worldgen/configured_feature/nitrate_ore.json deleted file mode 100644 index 2287b3ddd..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/configured_feature/nitrate_ore.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:ore", - "config": { - "discard_chance_on_air_exposure": 0.0, - "size": 10, - "targets": [ - { - "state": { - "Name": "createnuclear:nitrate_ore" - }, - "target": { - "predicate_type": "minecraft:tag_match", - "tag": "minecraft:stone_ore_replaceables" - } - }, - { - "state": { - "Name": "createnuclear:deepslate_nitrate_ore" - }, - "target": { - "predicate_type": "minecraft:tag_match", - "tag": "minecraft:deepslate_ore_replaceables" - } - } - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/configured_feature/thorium_ore.json b/src/generated/resources/data/createnuclear/worldgen/configured_feature/thorium_ore.json deleted file mode 100644 index f0e17e287..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/configured_feature/thorium_ore.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:ore", - "config": { - "discard_chance_on_air_exposure": 0.0, - "size": 12, - "targets": [ - { - "state": { - "Name": "createnuclear:thorium_ore" - }, - "target": { - "predicate_type": "minecraft:tag_match", - "tag": "minecraft:stone_ore_replaceables" - } - }, - { - "state": { - "Name": "createnuclear:deepslate_thorium_ore" - }, - "target": { - "predicate_type": "minecraft:tag_match", - "tag": "minecraft:deepslate_ore_replaceables" - } - } - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/erosion.json b/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/erosion.json deleted file mode 100644 index feb1cdbd3..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/erosion.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:add", - "argument1": { - "type": "minecraft:y_clamped_gradient", - "from_value": 1.0, - "from_y": 0, - "to_value": -1.0, - "to_y": 90 - }, - "argument2": { - "type": "minecraft:old_blended_noise", - "smear_scale_multiplier": 8.0, - "xz_factor": 80.0, - "xz_scale": 0.25, - "y_factor": 160.0, - "y_scale": 0.375 - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/final_density.json b/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/final_density.json deleted file mode 100644 index feb1cdbd3..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/density_function/irradiated/final_density.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:add", - "argument1": { - "type": "minecraft:y_clamped_gradient", - "from_value": 1.0, - "from_y": 0, - "to_value": -1.0, - "to_y": 90 - }, - "argument2": { - "type": "minecraft:old_blended_noise", - "smear_scale_multiplier": 8.0, - "xz_factor": 80.0, - "xz_scale": 0.25, - "y_factor": 160.0, - "y_scale": 0.375 - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/noise/irradiated/erosion.json b/src/generated/resources/data/createnuclear/worldgen/noise/irradiated/erosion.json deleted file mode 100644 index 5cb782332..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/noise/irradiated/erosion.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "amplitudes": [ - 1.0, - 1.0, - 0.0, - 1.0, - 1.0 - ], - "firstOctave": -9 -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/noise_settings/irradiated_noise.json b/src/generated/resources/data/createnuclear/worldgen/noise_settings/irradiated_noise.json deleted file mode 100644 index b59dbcfe9..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/noise_settings/irradiated_noise.json +++ /dev/null @@ -1,327 +0,0 @@ -{ - "aquifers_enabled": false, - "default_block": { - "Name": "createnuclear:steel_block" - }, - "default_fluid": { - "Name": "minecraft:air" - }, - "disable_mob_generation": false, - "legacy_random_source": false, - "noise": { - "height": 256, - "min_y": -32, - "size_horizontal": 1, - "size_vertical": 2 - }, - "noise_router": { - "barrier": 1.0, - "continents": "minecraft:overworld/continents", - "depth": "minecraft:overworld/depth", - "erosion": "createnuclear:irradiated/erosion", - "final_density": { - "type": "minecraft:blend_density", - "argument": "createnuclear:irradiated/final_density" - }, - "fluid_level_floodedness": 0.0, - "fluid_level_spread": 0.0, - "initial_density_without_jaggedness": { - "type": "minecraft:add", - "argument1": 0.1171875, - "argument2": { - "type": "minecraft:mul", - "argument1": { - "type": "minecraft:y_clamped_gradient", - "from_value": 0.0, - "from_y": -30, - "to_value": 1.0, - "to_y": -40 - }, - "argument2": { - "type": "minecraft:add", - "argument1": -0.1171875, - "argument2": { - "type": "minecraft:add", - "argument1": -0.078125, - "argument2": { - "type": "minecraft:mul", - "argument1": { - "type": "minecraft:y_clamped_gradient", - "from_value": 1.0, - "from_y": 240, - "to_value": 0.0, - "to_y": 256 - }, - "argument2": { - "type": "minecraft:add", - "argument1": 0.078125, - "argument2": { - "type": "minecraft:clamp", - "input": { - "type": "minecraft:add", - "argument1": -0.703125, - "argument2": { - "type": "minecraft:mul", - "argument1": 4.0, - "argument2": { - "type": "minecraft:quarter_negative", - "argument": { - "type": "minecraft:mul", - "argument1": "minecraft:overworld/depth", - "argument2": { - "type": "minecraft:cache_2d", - "argument": "minecraft:overworld/factor" - } - } - } - } - }, - "max": 64.0, - "min": -30.0 - } - } - } - } - } - } - }, - "lava": 0.0, - "ridges": "minecraft:overworld/ridges", - "temperature": { - "type": "minecraft:shifted_noise", - "noise": "minecraft:temperature", - "shift_x": "minecraft:shift_x", - "shift_y": 0.0, - "shift_z": "minecraft:shift_z", - "xz_scale": 0.25, - "y_scale": 0.0 - }, - "vegetation": { - "type": "minecraft:shifted_noise", - "noise": "minecraft:vegetation", - "shift_x": "minecraft:shift_x", - "shift_y": 0.0, - "shift_z": "minecraft:shift_z", - "xz_scale": 0.0, - "y_scale": 0.0 - }, - "vein_gap": 0.0, - "vein_ridged": 0.0, - "vein_toggle": 0.0 - }, - "ore_veins_enabled": false, - "sea_level": 32, - "spawn_target": [ - { - "continentalness": [ - -0.11, - 1.0 - ], - "depth": 0.0, - "erosion": [ - -1.0, - 1.0 - ], - "humidity": [ - -1.0, - 1.0 - ], - "offset": 0.0, - "temperature": [ - -1.0, - 1.0 - ], - "weirdness": [ - -1.0, - -0.16 - ] - }, - { - "continentalness": [ - -0.11, - 1.0 - ], - "depth": 0.0, - "erosion": [ - -1.0, - 1.0 - ], - "humidity": [ - -1.0, - 1.0 - ], - "offset": 0.0, - "temperature": [ - -1.0, - 1.0 - ], - "weirdness": [ - 0.16, - 1.0 - ] - } - ], - "surface_rule": { - "type": "minecraft:sequence", - "sequence": [ - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:biome", - "biome_is": [ - "createnuclear:irradiated_land" - ] - }, - "then_run": { - "type": "minecraft:sequence", - "sequence": [ - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:noise_threshold", - "max_threshold": 0.0465, - "min_threshold": 0.035, - "noise": "createnuclear:irradiated/erosion" - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:lead_ore" - } - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:noise_threshold", - "max_threshold": 0.0545, - "min_threshold": 0.039, - "noise": "createnuclear:irradiated/erosion" - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:lead_block" - } - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:noise_threshold", - "max_threshold": 0.069, - "min_threshold": 0.0545, - "noise": "createnuclear:irradiated/erosion" - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:raw_lead_block" - } - } - } - ] - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:vertical_gradient", - "false_at_and_above": { - "above_bottom": 5 - }, - "random_name": "minecraft:bedrock_floor", - "true_at_and_below": { - "above_bottom": 0 - } - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "minecraft:bedrock" - } - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:above_preliminary_surface" - }, - "then_run": { - "type": "minecraft:sequence", - "sequence": [ - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:stone_depth", - "add_surface_depth": false, - "offset": 0, - "secondary_depth_range": 0, - "surface_type": "floor" - }, - "then_run": { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:biome", - "biome_is": [ - "createnuclear:irradiated_land" - ] - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:raw_lead_block" - } - } - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:stone_depth", - "add_surface_depth": true, - "offset": 0, - "secondary_depth_range": 0, - "surface_type": "floor" - }, - "then_run": { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:biome", - "biome_is": [ - "createnuclear:irradiated_land" - ] - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:raw_lead_block" - } - } - } - } - ] - } - }, - { - "type": "minecraft:condition", - "if_true": { - "type": "minecraft:vertical_gradient", - "false_at_and_above": { - "absolute": 4 - }, - "random_name": "minecraft:enriched", - "true_at_and_below": { - "absolute": -4 - } - }, - "then_run": { - "type": "minecraft:block", - "result_state": { - "Name": "createnuclear:enriched_soul_soil" - } - } - } - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/placed_feature/lead_ore.json b/src/generated/resources/data/createnuclear/worldgen/placed_feature/lead_ore.json index 0cc2bfabc..e9eff2632 100644 --- a/src/generated/resources/data/createnuclear/worldgen/placed_feature/lead_ore.json +++ b/src/generated/resources/data/createnuclear/worldgen/placed_feature/lead_ore.json @@ -3,7 +3,7 @@ "placement": [ { "type": "minecraft:count", - "count": 10 + "count": 6 }, { "type": "minecraft:in_square" @@ -13,15 +13,15 @@ "height": { "type": "minecraft:trapezoid", "max_inclusive": { - "absolute": 60 + "absolute": 64 }, "min_inclusive": { - "absolute": -16 + "absolute": -64 } } }, { - "type": "createnuclear:config_filter" + "type": "create:config_filter" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/placed_feature/nitrate_ore.json b/src/generated/resources/data/createnuclear/worldgen/placed_feature/nitrate_ore.json deleted file mode 100644 index cdfa1f6b5..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/placed_feature/nitrate_ore.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "feature": "createnuclear:nitrate_ore", - "placement": [ - { - "type": "minecraft:count", - "count": 6 - }, - { - "type": "minecraft:in_square" - }, - { - "type": "minecraft:height_range", - "height": { - "type": "minecraft:trapezoid", - "max_inclusive": { - "absolute": 64 - }, - "min_inclusive": { - "absolute": -63 - } - } - }, - { - "type": "createnuclear:config_filter" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json b/src/generated/resources/data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json index 87db06f6a..d5ec73f0a 100644 --- a/src/generated/resources/data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json +++ b/src/generated/resources/data/createnuclear/worldgen/placed_feature/striated_ores_overworld.json @@ -3,7 +3,7 @@ "placement": [ { "type": "minecraft:rarity_filter", - "chance": 64 + "chance": 18 }, { "type": "minecraft:in_square" @@ -13,15 +13,15 @@ "height": { "type": "minecraft:uniform", "max_inclusive": { - "absolute": 16 + "absolute": 70 }, "min_inclusive": { - "absolute": -63 + "absolute": -30 } } }, { - "type": "createnuclear:config_filter" + "type": "create:config_filter" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/placed_feature/thorium_ore.json b/src/generated/resources/data/createnuclear/worldgen/placed_feature/thorium_ore.json deleted file mode 100644 index 3a1cfe261..000000000 --- a/src/generated/resources/data/createnuclear/worldgen/placed_feature/thorium_ore.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "feature": "createnuclear:thorium_ore", - "placement": [ - { - "type": "minecraft:count", - "count": 6 - }, - { - "type": "minecraft:in_square" - }, - { - "type": "minecraft:height_range", - "height": { - "type": "minecraft:trapezoid", - "max_inclusive": { - "absolute": 55 - }, - "min_inclusive": { - "absolute": -16 - } - } - }, - { - "type": "createnuclear:config_filter" - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/createnuclear/worldgen/placed_feature/uranium_ore.json b/src/generated/resources/data/createnuclear/worldgen/placed_feature/uranium_ore.json index 848720413..5613d1528 100644 --- a/src/generated/resources/data/createnuclear/worldgen/placed_feature/uranium_ore.json +++ b/src/generated/resources/data/createnuclear/worldgen/placed_feature/uranium_ore.json @@ -3,7 +3,7 @@ "placement": [ { "type": "minecraft:count", - "count": 4 + "count": 6 }, { "type": "minecraft:in_square" @@ -13,15 +13,15 @@ "height": { "type": "minecraft:trapezoid", "max_inclusive": { - "absolute": 16 + "absolute": 64 }, "min_inclusive": { - "absolute": -63 + "absolute": -64 } } }, { - "type": "createnuclear:config_filter" + "type": "create:config_filter" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores.json b/src/generated/resources/data/forge/tags/blocks/ores.json index c393b2056..52471c4ab 100644 --- a/src/generated/resources/data/forge/tags/blocks/ores.json +++ b/src/generated/resources/data/forge/tags/blocks/ores.json @@ -1,12 +1,8 @@ { "values": [ - "createnuclear:deepslate_uranium_ore", "createnuclear:deepslate_lead_ore", - "createnuclear:deepslate_thorium_ore", - "createnuclear:uranium_ore", "createnuclear:lead_ore", - "createnuclear:thorium_ore", - "createnuclear:nitrate_ore", - "createnuclear:deepslate_nitrate_ore" + "createnuclear:deepslate_uranium_ore", + "createnuclear:uranium_ore" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores/nitrate.json b/src/generated/resources/data/forge/tags/blocks/ores/nitrate.json deleted file mode 100644 index e306fa649..000000000 --- a/src/generated/resources/data/forge/tags/blocks/ores/nitrate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:nitrate_ore", - "createnuclear:deepslate_nitrate_ore" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores/thorium.json b/src/generated/resources/data/forge/tags/blocks/ores/thorium.json deleted file mode 100644 index c5f8a4240..000000000 --- a/src/generated/resources/data/forge/tags/blocks/ores/thorium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:deepslate_thorium_ore", - "createnuclear:thorium_ore" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores_in_ground/deepslate.json b/src/generated/resources/data/forge/tags/blocks/ores_in_ground/deepslate.json index 5d99e44fe..f66bbd403 100644 --- a/src/generated/resources/data/forge/tags/blocks/ores_in_ground/deepslate.json +++ b/src/generated/resources/data/forge/tags/blocks/ores_in_ground/deepslate.json @@ -1,8 +1,6 @@ { "values": [ - "createnuclear:deepslate_uranium_ore", "createnuclear:deepslate_lead_ore", - "createnuclear:deepslate_thorium_ore", - "createnuclear:deepslate_nitrate_ore" + "createnuclear:deepslate_uranium_ore" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/ores_in_ground/stone.json b/src/generated/resources/data/forge/tags/blocks/ores_in_ground/stone.json index c257624a2..a8a95f51a 100644 --- a/src/generated/resources/data/forge/tags/blocks/ores_in_ground/stone.json +++ b/src/generated/resources/data/forge/tags/blocks/ores_in_ground/stone.json @@ -1,8 +1,6 @@ { "values": [ - "createnuclear:uranium_ore", "createnuclear:lead_ore", - "createnuclear:thorium_ore", - "createnuclear:nitrate_ore" + "createnuclear:uranium_ore" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/storage_blocks/raw_thorium.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/raw_thorium.json deleted file mode 100644 index 3bb2b80c9..000000000 --- a/src/generated/resources/data/forge/tags/blocks/storage_blocks/raw_thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:raw_thorium_block" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/storage_blocks/thorium.json b/src/generated/resources/data/forge/tags/blocks/storage_blocks/thorium.json deleted file mode 100644 index 6ea006dfe..000000000 --- a/src/generated/resources/data/forge/tags/blocks/storage_blocks/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_block" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/armors/boots.json b/src/generated/resources/data/forge/tags/items/armors/boots.json index c945fe9f3..3e6a77536 100644 --- a/src/generated/resources/data/forge/tags/items/armors/boots.json +++ b/src/generated/resources/data/forge/tags/items/armors/boots.json @@ -1,5 +1,5 @@ { "values": [ - "createnuclear:default_anti_radiation_boots" + "createnuclear:anti_radiation_boots" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/armors/chestplates.json b/src/generated/resources/data/forge/tags/items/armors/chestplates.json index 6ee7aa949..8b659b88b 100644 --- a/src/generated/resources/data/forge/tags/items/armors/chestplates.json +++ b/src/generated/resources/data/forge/tags/items/armors/chestplates.json @@ -1,5 +1,20 @@ { "values": [ - "createnuclear:default_anti_radiation_chestplate" + "createnuclear:white_anti_radiation_chestplate", + "createnuclear:orange_anti_radiation_chestplate", + "createnuclear:magenta_anti_radiation_chestplate", + "createnuclear:light_blue_anti_radiation_chestplate", + "createnuclear:yellow_anti_radiation_chestplate", + "createnuclear:lime_anti_radiation_chestplate", + "createnuclear:pink_anti_radiation_chestplate", + "createnuclear:gray_anti_radiation_chestplate", + "createnuclear:light_gray_anti_radiation_chestplate", + "createnuclear:cyan_anti_radiation_chestplate", + "createnuclear:purple_anti_radiation_chestplate", + "createnuclear:blue_anti_radiation_chestplate", + "createnuclear:brown_anti_radiation_chestplate", + "createnuclear:green_anti_radiation_chestplate", + "createnuclear:red_anti_radiation_chestplate", + "createnuclear:black_anti_radiation_chestplate" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/armors/helmets.json b/src/generated/resources/data/forge/tags/items/armors/helmets.json index 855fd1a52..7d378f7fa 100644 --- a/src/generated/resources/data/forge/tags/items/armors/helmets.json +++ b/src/generated/resources/data/forge/tags/items/armors/helmets.json @@ -1,5 +1,20 @@ { "values": [ - "createnuclear:default_anti_radiation_helmet" + "createnuclear:white_anti_radiation_helmet", + "createnuclear:orange_anti_radiation_helmet", + "createnuclear:magenta_anti_radiation_helmet", + "createnuclear:light_blue_anti_radiation_helmet", + "createnuclear:yellow_anti_radiation_helmet", + "createnuclear:lime_anti_radiation_helmet", + "createnuclear:pink_anti_radiation_helmet", + "createnuclear:gray_anti_radiation_helmet", + "createnuclear:light_gray_anti_radiation_helmet", + "createnuclear:cyan_anti_radiation_helmet", + "createnuclear:purple_anti_radiation_helmet", + "createnuclear:blue_anti_radiation_helmet", + "createnuclear:brown_anti_radiation_helmet", + "createnuclear:green_anti_radiation_helmet", + "createnuclear:red_anti_radiation_helmet", + "createnuclear:black_anti_radiation_helmet" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/armors/leggings.json b/src/generated/resources/data/forge/tags/items/armors/leggings.json index cbd5fb4fa..ea2384340 100644 --- a/src/generated/resources/data/forge/tags/items/armors/leggings.json +++ b/src/generated/resources/data/forge/tags/items/armors/leggings.json @@ -1,5 +1,20 @@ { "values": [ - "createnuclear:default_anti_radiation_leggings" + "createnuclear:white_anti_radiation_leggings", + "createnuclear:orange_anti_radiation_leggings", + "createnuclear:magenta_anti_radiation_leggings", + "createnuclear:light_blue_anti_radiation_leggings", + "createnuclear:yellow_anti_radiation_leggings", + "createnuclear:lime_anti_radiation_leggings", + "createnuclear:pink_anti_radiation_leggings", + "createnuclear:gray_anti_radiation_leggings", + "createnuclear:light_gray_anti_radiation_leggings", + "createnuclear:cyan_anti_radiation_leggings", + "createnuclear:purple_anti_radiation_leggings", + "createnuclear:blue_anti_radiation_leggings", + "createnuclear:brown_anti_radiation_leggings", + "createnuclear:green_anti_radiation_leggings", + "createnuclear:red_anti_radiation_leggings", + "createnuclear:black_anti_radiation_leggings" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/buckets/nitrogen.json b/src/generated/resources/data/forge/tags/items/buckets/nitrogen.json deleted file mode 100644 index 062ab2cc1..000000000 --- a/src/generated/resources/data/forge/tags/items/buckets/nitrogen.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:nitrogen_bucket" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/buckets/thorium.json b/src/generated/resources/data/forge/tags/items/buckets/thorium.json deleted file mode 100644 index 6aec42449..000000000 --- a/src/generated/resources/data/forge/tags/items/buckets/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_bucket" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/coal_dusts.json b/src/generated/resources/data/forge/tags/items/coal_dusts.json new file mode 100644 index 000000000..84c8f5690 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/coal_dusts.json @@ -0,0 +1,5 @@ +{ + "values": [ + "createnuclear:coal_dust" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/dusts.json b/src/generated/resources/data/forge/tags/items/dusts.json index 3bf9b0389..16ed22994 100644 --- a/src/generated/resources/data/forge/tags/items/dusts.json +++ b/src/generated/resources/data/forge/tags/items/dusts.json @@ -1,6 +1,5 @@ { "values": [ - "createnuclear:thorium_dust", "createnuclear:uranium_powder", "createnuclear:coal_dust" ] diff --git a/src/generated/resources/data/forge/tags/items/dusts/thorium.json b/src/generated/resources/data/forge/tags/items/dusts/thorium.json deleted file mode 100644 index 9b0a35348..000000000 --- a/src/generated/resources/data/forge/tags/items/dusts/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_dust" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ingots.json b/src/generated/resources/data/forge/tags/items/ingots.json index 069fcb892..70e4923e4 100644 --- a/src/generated/resources/data/forge/tags/items/ingots.json +++ b/src/generated/resources/data/forge/tags/items/ingots.json @@ -1,7 +1,6 @@ { "values": [ "createnuclear:steel_ingot", - "createnuclear:lead_ingot", - "createnuclear:thorium_ingot" + "createnuclear:lead_ingot" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ingots/thorium.json b/src/generated/resources/data/forge/tags/items/ingots/thorium.json deleted file mode 100644 index ebbb559f0..000000000 --- a/src/generated/resources/data/forge/tags/items/ingots/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_ingot" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/nuggets.json b/src/generated/resources/data/forge/tags/items/nuggets.json index 4683ae5fc..8cf12e202 100644 --- a/src/generated/resources/data/forge/tags/items/nuggets.json +++ b/src/generated/resources/data/forge/tags/items/nuggets.json @@ -1,7 +1,6 @@ { "values": [ "createnuclear:steel_nugget", - "createnuclear:lead_nugget", - "createnuclear:thorium_nugget" + "createnuclear:lead_nugget" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/nuggets/thorium.json b/src/generated/resources/data/forge/tags/items/nuggets/thorium.json deleted file mode 100644 index 6e41e836d..000000000 --- a/src/generated/resources/data/forge/tags/items/nuggets/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_nugget" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ores/nitrate.json b/src/generated/resources/data/forge/tags/items/ores/nitrate.json deleted file mode 100644 index e306fa649..000000000 --- a/src/generated/resources/data/forge/tags/items/ores/nitrate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:nitrate_ore", - "createnuclear:deepslate_nitrate_ore" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/ores/thorium.json b/src/generated/resources/data/forge/tags/items/ores/thorium.json deleted file mode 100644 index c5f8a4240..000000000 --- a/src/generated/resources/data/forge/tags/items/ores/thorium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "createnuclear:deepslate_thorium_ore", - "createnuclear:thorium_ore" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/raw_materials.json b/src/generated/resources/data/forge/tags/items/raw_materials.json index 53e805f60..801e2f126 100644 --- a/src/generated/resources/data/forge/tags/items/raw_materials.json +++ b/src/generated/resources/data/forge/tags/items/raw_materials.json @@ -1,7 +1,6 @@ { "values": [ "createnuclear:raw_lead", - "createnuclear:raw_uranium", - "createnuclear:raw_thorium" + "createnuclear:raw_uranium" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/raw_materials/thorium.json b/src/generated/resources/data/forge/tags/items/raw_materials/thorium.json deleted file mode 100644 index e2f43fb91..000000000 --- a/src/generated/resources/data/forge/tags/items/raw_materials/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:raw_thorium" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/raw_ores.json b/src/generated/resources/data/forge/tags/items/raw_ores.json index 53e805f60..801e2f126 100644 --- a/src/generated/resources/data/forge/tags/items/raw_ores.json +++ b/src/generated/resources/data/forge/tags/items/raw_ores.json @@ -1,7 +1,6 @@ { "values": [ "createnuclear:raw_lead", - "createnuclear:raw_uranium", - "createnuclear:raw_thorium" + "createnuclear:raw_uranium" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/rods.json b/src/generated/resources/data/forge/tags/items/rods.json index 657901035..b665274d5 100644 --- a/src/generated/resources/data/forge/tags/items/rods.json +++ b/src/generated/resources/data/forge/tags/items/rods.json @@ -1,7 +1,6 @@ { "values": [ "createnuclear:graphite_rod", - "createnuclear:uranium_rod", - "createnuclear:thorium_rod" + "createnuclear:uranium_rod" ] } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/storage_blocks/raw_thorium.json b/src/generated/resources/data/forge/tags/items/storage_blocks/raw_thorium.json deleted file mode 100644 index 3bb2b80c9..000000000 --- a/src/generated/resources/data/forge/tags/items/storage_blocks/raw_thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:raw_thorium_block" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/storage_blocks/thorium.json b/src/generated/resources/data/forge/tags/items/storage_blocks/thorium.json deleted file mode 100644 index 6ea006dfe..000000000 --- a/src/generated/resources/data/forge/tags/items/storage_blocks/thorium.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "createnuclear:thorium_block" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json index ef0c10843..cbc315dc7 100644 --- a/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -4,26 +4,18 @@ "createnuclear:reactor_core", "createnuclear:reactor_frame", "createnuclear:reactor_cooler", - "createnuclear:reactor_rod_input", - "createnuclear:reactor_fluid_input", + "createnuclear:reactor_input", "createnuclear:reactor_output", "createnuclear:reactor_controller", "createnuclear:enriching_campfire", - "createnuclear:deepslate_uranium_ore", "createnuclear:deepslate_lead_ore", - "createnuclear:deepslate_thorium_ore", - "createnuclear:uranium_ore", "createnuclear:lead_ore", - "createnuclear:thorium_ore", - "createnuclear:nitrate_ore", - "createnuclear:deepslate_nitrate_ore", "createnuclear:raw_uranium_block", "createnuclear:raw_lead_block", - "createnuclear:raw_thorium_block", "createnuclear:lead_block", - "createnuclear:thorium_block", + "createnuclear:deepslate_uranium_ore", + "createnuclear:uranium_ore", "createnuclear:steel_block", - "createnuclear:reactor_alarm", "createnuclear:autunite", "createnuclear:cut_autunite", "createnuclear:cut_autunite_stairs", diff --git a/src/generated/resources/data/minecraft/tags/blocks/needs_diamond_tool.json b/src/generated/resources/data/minecraft/tags/blocks/needs_diamond_tool.json index 188e478f3..e661e22b7 100644 --- a/src/generated/resources/data/minecraft/tags/blocks/needs_diamond_tool.json +++ b/src/generated/resources/data/minecraft/tags/blocks/needs_diamond_tool.json @@ -4,16 +4,12 @@ "createnuclear:reactor_core", "createnuclear:reactor_frame", "createnuclear:reactor_cooler", - "createnuclear:reactor_rod_input", - "createnuclear:reactor_fluid_input", + "createnuclear:reactor_input", "createnuclear:reactor_output", "createnuclear:reactor_controller", + "createnuclear:raw_uranium_block", "createnuclear:enriched_soul_soil", "createnuclear:deepslate_uranium_ore", - "createnuclear:deepslate_thorium_ore", - "createnuclear:uranium_ore", - "createnuclear:thorium_ore", - "createnuclear:raw_uranium_block", - "createnuclear:raw_thorium_block" + "createnuclear:uranium_ore" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/needs_iron_tool.json b/src/generated/resources/data/minecraft/tags/blocks/needs_iron_tool.json index c393b2056..52471c4ab 100644 --- a/src/generated/resources/data/minecraft/tags/blocks/needs_iron_tool.json +++ b/src/generated/resources/data/minecraft/tags/blocks/needs_iron_tool.json @@ -1,12 +1,8 @@ { "values": [ - "createnuclear:deepslate_uranium_ore", "createnuclear:deepslate_lead_ore", - "createnuclear:deepslate_thorium_ore", - "createnuclear:uranium_ore", "createnuclear:lead_ore", - "createnuclear:thorium_ore", - "createnuclear:nitrate_ore", - "createnuclear:deepslate_nitrate_ore" + "createnuclear:deepslate_uranium_ore", + "createnuclear:uranium_ore" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/fluids/water.json b/src/generated/resources/data/minecraft/tags/fluids/water.json deleted file mode 100644 index 64bc4a875..000000000 --- a/src/generated/resources/data/minecraft/tags/fluids/water.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "#createnuclear:nitrogen" - ] -} \ No newline at end of file diff --git a/src/main/java/lib/multiblock/SimpleMultiBlockAislePatternBuilder.java b/src/main/java/lib/multiblock/SimpleMultiBlockAislePatternBuilder.java index 77b34369f..77d9321a7 100644 --- a/src/main/java/lib/multiblock/SimpleMultiBlockAislePatternBuilder.java +++ b/src/main/java/lib/multiblock/SimpleMultiBlockAislePatternBuilder.java @@ -4,12 +4,14 @@ import com.google.common.collect.Maps; import lib.multiblock.impl.IMultiBlockPatternBuilder; import lib.multiblock.impl.IMultiBlockPattern; +import lib.multiblock.impl.IMultiBlockPatternBuilder; import lib.multiblock.impl.IPatternBuilder; import lib.multiblock.misc.MultiBlockOffsetPos; import lib.multiblock.misc.Util; import net.minecraft.core.BlockPos; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.pattern.BlockInWorld; +import net.nuclearteam.createnuclear.CreateNuclear; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; diff --git a/src/main/java/lib/multiblock/SimpleMultiBlockPattern.java b/src/main/java/lib/multiblock/SimpleMultiBlockPattern.java index 0d8ef6aae..d67ad5c0f 100644 --- a/src/main/java/lib/multiblock/SimpleMultiBlockPattern.java +++ b/src/main/java/lib/multiblock/SimpleMultiBlockPattern.java @@ -18,20 +18,20 @@ import java.util.function.Predicate; import java.util.function.Supplier; +public final class SimpleMultiBlockPattern implements IMultiBlockPattern { + private final List multiBlockOffsetPosList; + private final Map> predicateHashMap; + private final Map> blockProvider; -public record SimpleMultiBlockPattern(List multiBlockOffsetPosList, - Map> predicateHashMap, - Map> blockProvider) implements IMultiBlockPattern { - - public SimpleMultiBlockPattern(List multiBlockOffsetPosList, Map> predicateHashMap, Map> blockProvider) { + public SimpleMultiBlockPattern(List multiBlockOffsetPosList, Map> predicateMap, Map> blockSuppliers) { this.multiBlockOffsetPosList = List.copyOf(multiBlockOffsetPosList); - this.predicateHashMap = Map.copyOf(predicateHashMap); - this.blockProvider = Map.copyOf(blockProvider); + this.predicateHashMap = Map.copyOf(predicateMap); + this.blockProvider = Map.copyOf(blockSuppliers); } public boolean matches(Level level, BlockPos blockPos, Rotation rotation) { for (MultiBlockOffsetPos multiBlockOffsetPos : multiBlockOffsetPosList) { - char character = multiBlockOffsetPos.character(); + char character = multiBlockOffsetPos.caracter(); Predicate predicate = predicateHashMap.get(character); BlockInWorld block = new BlockInWorld(level, blockPos.offset(multiBlockOffsetPos.pos().rotate(rotation)), false); @@ -43,7 +43,7 @@ public boolean matches(Level level, BlockPos blockPos, Rotation rotation) { public MultiblockMatchResult matchesWithResult(Level level, BlockPos blockPos, Rotation rotation) { List result = new ArrayList<>(); for (MultiBlockOffsetPos multiBlockOffsetPos : multiBlockOffsetPosList) { - char character = multiBlockOffsetPos.character(); + char character = multiBlockOffsetPos.caracter(); Predicate predicate = predicateHashMap.get(character); BlockInWorld block = new BlockInWorld(level, blockPos.offset(multiBlockOffsetPos.pos().rotate(rotation)), false); if (predicate == null || !predicate.test(block)) return null; @@ -58,14 +58,22 @@ public void construct(Level level, BlockPos blockPos, BiPredicate stateSupplier = blockProvider.get(character); if (stateSupplier != null) { var pos = blockPos.offset(multiBlockOffsetPos.pos().rotate(Rotation.NONE)); var state = stateSupplier.get(); - if (stateBiPredicate.test(character, state)) - level.getServer().tell(new TickTask(3, () -> level.setBlock(pos, state, Block.UPDATE_ALL))); + if (stateBiPredicate.test(character, state)) level.getServer().tell(new TickTask(3, () -> level.setBlock(pos, state, Block.UPDATE_ALL))); } } } + + @Override + public boolean matches(java.util.logging.Level level, BlockPos pos, Rotation rotation) { + return false; + } + + public List test() { + return this.multiBlockOffsetPosList; + } } diff --git a/src/main/java/lib/multiblock/SimpleMultiBlockPatternBuilder.java b/src/main/java/lib/multiblock/SimpleMultiBlockPatternBuilder.java new file mode 100644 index 000000000..e7a56b706 --- /dev/null +++ b/src/main/java/lib/multiblock/SimpleMultiBlockPatternBuilder.java @@ -0,0 +1,68 @@ +package lib.multiblock; + +import com.google.common.base.Joiner; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import lib.multiblock.impl.IMultiBlockPatternBuilder; +import lib.multiblock.impl.IMultiBlockPatternBuilder; +import lib.multiblock.impl.IPatternBuilder; +import lib.multiblock.misc.MultiBlockOffsetPos; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.pattern.BlockInWorld; +import lib.multiblock.impl.IMultiBlockPattern; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.function.Predicate; +import java.util.function.Supplier; + +public final class SimpleMultiBlockPatternBuilder implements IMultiBlockPatternBuilder { + private static final Joiner COMA_SEPARATOR = Joiner.on(','); + public static SimpleMultiBlockPatternBuilder start() { + return new SimpleMultiBlockPatternBuilder(); + } + + private final Map> multiBlockOffsetPosList = Maps.newHashMap(); + private final Map> predicateHashMap = Maps.newHashMap(); + private final Map> blockProvider = Maps.newHashMap(); + + private SimpleMultiBlockPatternBuilder() {} + + private void ensureProperlyBuilt(List list) { + HashSet characters = new HashSet<>(); + list.forEach(multiBlockOffsetPos -> { + if (!predicateHashMap.containsKey(multiBlockOffsetPos.caracter())) + characters.add(multiBlockOffsetPos.caracter()); + }); + if (!characters.isEmpty()) + throw new IllegalStateException("Missing the following: \"%s\" for MultiBlock Pattern as they have not been defined".formatted(COMA_SEPARATOR.join(characters))); + } + + public SimpleMultiBlockPatternBuilder add(char character, BlockPos relativePos) { + multiBlockOffsetPosList.computeIfAbsent(character, ArrayList::new).add(new MultiBlockOffsetPos(character, relativePos)); + return this; + } + + public SimpleMultiBlockPatternBuilder where(char character, Predicate worldPredicate) { + if (!predicateHashMap.containsKey(character)) predicateHashMap.put(character, worldPredicate); + return this; + } + + public SimpleMultiBlockPatternBuilder block(char pSymbol, Supplier blockStateSupplier) { + blockProvider.put(pSymbol, blockStateSupplier); + return this; + } + + + public T build(IPatternBuilder builder) { + var coreList = multiBlockOffsetPosList.get('*'); + if (coreList == null || coreList.size() != 1) + throw new IllegalArgumentException("Failed to build pattern due to having more or less than one \"*\" defined! Have: %s Expected: 1".formatted(coreList != null ? coreList.size() : 0)); + List list = Lists.newArrayList(); + multiBlockOffsetPosList.forEach((k, v) -> list.addAll(v)); + return builder.make(list, predicateHashMap, blockProvider); + } +} diff --git a/src/main/java/lib/multiblock/impl/IBetterPattern.java b/src/main/java/lib/multiblock/impl/IBetterPattern.java new file mode 100644 index 000000000..f992135e5 --- /dev/null +++ b/src/main/java/lib/multiblock/impl/IBetterPattern.java @@ -0,0 +1,31 @@ +package lib.multiblock.impl; + +import lib.multiblock.misc.MultiblockMatchResult; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.function.BiPredicate; + +public class IBetterPattern implements IMultiBlockPattern { + @Override + public boolean matches(Level level, BlockPos pos, Rotation rotation) { + return false; + } + + @Override + public MultiblockMatchResult matchesWithResult(Level level, BlockPos pos, Rotation rotation) { + return null; + } + + @Override + public void construct(Level level, BlockPos pos, BiPredicate blockStateBiPredicate) { + + } + + @Override + public boolean matches(java.util.logging.Level level, BlockPos pos, Rotation rotation) { + return false; + } +} diff --git a/src/main/java/lib/multiblock/impl/IMultiBlockPattern.java b/src/main/java/lib/multiblock/impl/IMultiBlockPattern.java index 25d7ae6aa..7453566f7 100644 --- a/src/main/java/lib/multiblock/impl/IMultiBlockPattern.java +++ b/src/main/java/lib/multiblock/impl/IMultiBlockPattern.java @@ -34,4 +34,7 @@ default MultiblockMatchResult matchesWithResult(Level level, BlockPos pos) { default void contruct(Level level, BlockPos pos) { construct(level, pos, (a,b) -> true); } + + + boolean matches(java.util.logging.Level level, BlockPos pos, Rotation rotation); } diff --git a/src/main/java/lib/multiblock/impl/IMultiBlockPatternBuilder.java b/src/main/java/lib/multiblock/impl/IMultiBlockPatternBuilder.java index b5c34c567..17c87dd34 100644 --- a/src/main/java/lib/multiblock/impl/IMultiBlockPatternBuilder.java +++ b/src/main/java/lib/multiblock/impl/IMultiBlockPatternBuilder.java @@ -2,7 +2,6 @@ import lib.multiblock.SimpleMultiBlockPattern; -@SuppressWarnings("unchecked") public interface IMultiBlockPatternBuilder { < T extends IMultiBlockPattern> T build(IPatternBuilder builder); diff --git a/src/main/java/lib/multiblock/manager/MultiBlockCache.java b/src/main/java/lib/multiblock/manager/MultiBlockCache.java new file mode 100644 index 000000000..5a2c97f1d --- /dev/null +++ b/src/main/java/lib/multiblock/manager/MultiBlockCache.java @@ -0,0 +1,25 @@ +package lib.multiblock.manager; + +import lib.multiblock.impl.IMultiBlockPattern; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.block.Rotation; + +import java.util.logging.Level; + +public class MultiBlockCache { + private T cachedResult; + public MultiBlockCache(){} + + public void updateStructure(T blockPattern) { + this.cachedResult = blockPattern; + } + + public boolean isValid(Level level, BlockPos pos, Rotation rotation) { + return cachedResult != null && cachedResult.matches(level, pos, rotation); + } + + public boolean isCached() { + return cachedResult == null; + } +} diff --git a/src/main/java/lib/multiblock/manager/MultiBlockManager.java b/src/main/java/lib/multiblock/manager/MultiBlockManager.java new file mode 100644 index 000000000..dd8dbf4e2 --- /dev/null +++ b/src/main/java/lib/multiblock/manager/MultiBlockManager.java @@ -0,0 +1,27 @@ +package lib.multiblock.manager; + +import lib.multiblock.impl.IMultiBlockPattern; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Rotation; + +import java.util.ArrayList; + +public class MultiBlockManager { + private final ArrayList> registeredMultiBlockPatterns = new ArrayList>(); + + public MultiBlockManager(){} + + public E register(String ID, T data, E blockPattern) { + registeredMultiBlockPatterns.add(new RegisteredMultiBlockPattern<>(ID, data, blockPattern)); + return blockPattern; + } + + public RegisteredMultiBlockPattern findStructure(Level level, BlockPos pos, Rotation rotation) { + for (RegisteredMultiBlockPattern registeredMultiBlockPattern : registeredMultiBlockPatterns) { + var result = registeredMultiBlockPattern.pattern().matches(level, pos, rotation); + if(result) return registeredMultiBlockPattern; + } + return null; + } +} diff --git a/src/main/java/lib/multiblock/manager/RegisteredMultiBlockPattern.java b/src/main/java/lib/multiblock/manager/RegisteredMultiBlockPattern.java new file mode 100644 index 000000000..264af6d8f --- /dev/null +++ b/src/main/java/lib/multiblock/manager/RegisteredMultiBlockPattern.java @@ -0,0 +1,6 @@ +package lib.multiblock.manager; + +import lib.multiblock.impl.IMultiBlockPattern; + +public record RegisteredMultiBlockPattern (String ID, T data, IMultiBlockPattern pattern) { +} diff --git a/src/main/java/lib/multiblock/misc/MultiBlockOffsetPos.java b/src/main/java/lib/multiblock/misc/MultiBlockOffsetPos.java index 11801a72c..a388a68d8 100644 --- a/src/main/java/lib/multiblock/misc/MultiBlockOffsetPos.java +++ b/src/main/java/lib/multiblock/misc/MultiBlockOffsetPos.java @@ -2,5 +2,5 @@ import net.minecraft.core.BlockPos; -public record MultiBlockOffsetPos(char character, BlockPos pos) { +public record MultiBlockOffsetPos(char caracter, BlockPos pos) { } diff --git a/src/main/java/lib/multiblock/misc/Util.java b/src/main/java/lib/multiblock/misc/Util.java index 184f03483..81eb1ef5b 100644 --- a/src/main/java/lib/multiblock/misc/Util.java +++ b/src/main/java/lib/multiblock/misc/Util.java @@ -20,12 +20,14 @@ public static Map> parseBlockPattern(List> blockOffsets = new HashMap<>(); - int starX = -1, starY = -1, starZ = -1; + int starX = -1; + int starY = -1; + int starZ = -1; for (int y = 0; y < aisles.size(); y++) { String[] aisle = aisles.get(y); - for (int x = 0; x < aisle.length; x++) { + for (int x=0; x < aisle.length; x++) { for (int z = 0; z < aisle[x].length(); z++) { if (aisle[x].charAt(z) == '*') { starX = x; diff --git a/src/main/java/net/nuclearteam/createnuclear/CNAttributes.java b/src/main/java/net/nuclearteam/createnuclear/CNAttributes.java deleted file mode 100644 index a2af67d68..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNAttributes.java +++ /dev/null @@ -1,18 +0,0 @@ -package net.nuclearteam.createnuclear; - -import net.minecraft.world.entity.ai.attributes.Attribute; -import net.minecraft.world.entity.ai.attributes.RangedAttribute; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegistryObject; - -public class CNAttributes { - public static final DeferredRegister ATTRIBUTES = DeferredRegister.create(ForgeRegistries.ATTRIBUTES, CreateNuclear.MOD_ID); - - public static final RegistryObject IRRADIATED_RESISTANCE = ATTRIBUTES.register("generic.irradiated_resistance", () -> new RangedAttribute("attribute.name.createnuclear.generic.irradiated_resistance", 0, 0, 1).setSyncable(true)); - - public static void register(IEventBus eventBus) { - ATTRIBUTES.register(eventBus); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNBlockEntityTypes.java b/src/main/java/net/nuclearteam/createnuclear/CNBlockEntityTypes.java index 6489ae40f..f8a469cfa 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNBlockEntityTypes.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNBlockEntityTypes.java @@ -4,14 +4,10 @@ import com.simibubi.create.content.kinetics.base.OrientedRotatingVisual; import com.tterrag.registrate.util.entry.BlockEntityEntry; import net.nuclearteam.createnuclear.content.enriching.campfire.EnrichingCampfireBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.alarm.ReactorAlarmEntity; import net.nuclearteam.createnuclear.content.multiblock.casing.ReactorCasingEntity; import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; import net.nuclearteam.createnuclear.content.multiblock.core.ReactorCoreEntity; -import net.nuclearteam.createnuclear.content.multiblock.frame.ReactorFrameEntity; -import net.nuclearteam.createnuclear.content.multiblock.frame.ReactorFrameRenderer; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInputEntity; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInputEntity; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInputEntity; import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputEntity; import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputRenderer; @@ -31,20 +27,9 @@ public class CNBlockEntityTypes { .validBlocks(CNBlocks.REACTOR_CORE) .register(); - public static final BlockEntityEntry REACTOR_FRAME = - CreateNuclear.REGISTRATE.blockEntity("reactor_frame", ReactorFrameEntity::new) - .validBlocks(CNBlocks.REACTOR_FRAME) - .renderer(() -> ReactorFrameRenderer::new) - .register(); - - public static final BlockEntityEntry REACTOR_ROD_INPUT = - CreateNuclear.REGISTRATE.blockEntity("reactor_rod_input", ReactorRodInputEntity::new) - .validBlocks(CNBlocks.REACTOR_ROD_INPUT) - .register(); - - public static final BlockEntityEntry REACTOR_FLUID_INPUT = - CreateNuclear.REGISTRATE.blockEntity("reactor_fluid_input", ReactorFluidInputEntity::new) - .validBlocks(CNBlocks.REACTOR_FLUID_INPUT) + public static final BlockEntityEntry REACTOR_INPUT = + CreateNuclear.REGISTRATE.blockEntity("reactor_input", ReactorInputEntity::new) + .validBlocks(CNBlocks.REACTOR_INPUT) .register(); public static final BlockEntityEntry REACTOR_OUTPUT = @@ -59,10 +44,5 @@ public class CNBlockEntityTypes { .validBlocks(CNBlocks.REACTOR_CONTROLLER) .register(); - public static final BlockEntityEntry REACTOR_ALARM = - CreateNuclear.REGISTRATE.blockEntity("reactor_alarm", ReactorAlarmEntity::new) - .validBlocks(CNBlocks.REACTOR_ALARM) - .register(); - public static void register() {} } diff --git a/src/main/java/net/nuclearteam/createnuclear/CNBlocks.java b/src/main/java/net/nuclearteam/createnuclear/CNBlocks.java index 02159b2d7..39724348f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNBlocks.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNBlocks.java @@ -6,20 +6,16 @@ import com.simibubi.create.foundation.data.AssetLookup; import com.simibubi.create.foundation.data.CreateRegistrate; import com.simibubi.create.foundation.data.SharedProperties; -import static com.simibubi.create.api.behaviour.display.DisplaySource.displaySource; - - import com.tterrag.registrate.providers.RegistrateRecipeProvider; import com.tterrag.registrate.providers.loot.RegistrateBlockLootTables; import com.tterrag.registrate.util.entry.BlockEntry; import net.minecraft.client.renderer.RenderType; import net.minecraft.core.Direction; import net.minecraft.data.loot.BlockLootSubProvider; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.tags.BlockTags; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.ShapedRecipeBuilder; - +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.BlockTags; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.Items; import net.minecraft.world.item.enchantment.Enchantments; @@ -32,144 +28,123 @@ import net.minecraft.world.level.material.MapColor; import net.minecraft.world.level.storage.loot.entries.LootItem; import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount; -import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction; -import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator; import net.minecraftforge.client.model.generators.ConfiguredModel; import net.minecraftforge.client.model.generators.ModelFile; +import net.minecraftforge.common.Tags; import net.nuclearteam.createnuclear.content.enriching.campfire.EnrichingCampfireBlock; import net.nuclearteam.createnuclear.content.enriching.fire.EnrichingFireBlock; -import net.minecraftforge.common.Tags; - -import net.nuclearteam.createnuclear.content.multiblock.alarm.ReactorAlarm; +import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem; import net.nuclearteam.createnuclear.content.multiblock.casing.ReactorCasing; import net.nuclearteam.createnuclear.CNTags.CNBlockTags; +import net.nuclearteam.createnuclear.CNTags.CNItemTags; import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerGenerator; -import net.nuclearteam.createnuclear.content.multiblock.cooler.ReactorCooler; import net.nuclearteam.createnuclear.content.multiblock.core.ReactorCore; import net.nuclearteam.createnuclear.content.multiblock.frame.ReactorFrame; import net.nuclearteam.createnuclear.content.multiblock.frame.ReactorframeItem; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInput; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInputGenerator; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInput; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInputGenerator; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInput; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInputGenerator; import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutput; import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputGenerator; +import net.nuclearteam.createnuclear.content.multiblock.reactorCooler.ReactorCooler; import net.nuclearteam.createnuclear.content.multiblock.reinforced.ReinforcedGlassBlock; import net.nuclearteam.createnuclear.content.uraniumOre.UraniumOreBlock; -import net.nuclearteam.createnuclear.content.uraniumOre.UraniumOreItem; import static com.simibubi.create.foundation.data.CreateRegistrate.casingConnectivity; import static com.simibubi.create.foundation.data.ModelGen.customItemModel; import static com.simibubi.create.foundation.data.TagGen.axeOrPickaxe; import static com.simibubi.create.foundation.data.TagGen.pickaxeOnly; -@SuppressWarnings("removal") public class CNBlocks { - public static final BlockEntry REACTOR_CASING = CreateNuclear.REGISTRATE - .block("reactor_casing", properties -> new ReactorCasing(properties, ReactorCasing.TypeBlock.CASING)) - .properties(p -> p - .explosionResistance(3F) - .destroyTime(4F) - ) - .blockstate((c, p) -> p.getVariantBuilder(c.getEntry()).forAllStates((state) -> ConfiguredModel.builder() - .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/casing/block"))) - .build())) - .onRegister(CreateRegistrate.connectedTextures(() -> new EncasedCTBehaviour(CNSpriteShifts.REACTOR_CASING))) - .onRegister(casingConnectivity((block, cc) -> cc.makeCasing(block, CNSpriteShifts.REACTOR_CASING))) - .tag(BlockTags.NEEDS_DIAMOND_TOOL) - .simpleItem() - .transform(pickaxeOnly()) - .transform(displaySource(CNDisplaySources.HEAT)) - .transform(displaySource(CNDisplaySources.LIQUID_LEVEL)) - .transform(displaySource(CNDisplaySources.FUEL)) - .transform(displaySource(CNDisplaySources.COOLER)) - .transform(displaySource(CNDisplaySources.REACTOR_SIZE)) - .transform(displaySource(CNDisplaySources.REACTOR_SUMMARY)) - .register(); + public static final BlockEntry REACTOR_CASING = + CreateNuclear.REGISTRATE.block("reactor_casing", properties -> new ReactorCasing(properties, ReactorCasing.TypeBlock.CASING)) + .properties(p -> p.explosionResistance(3F) + .destroyTime(4F)) + .blockstate((c,p) -> + p.getVariantBuilder(c.getEntry()).forAllStates((state) -> ConfiguredModel.builder() + .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/casing/block"))) + .build())) + .onRegister(CreateRegistrate.connectedTextures(() -> new EncasedCTBehaviour(CNSpriteShifts.REACTOR_CASING))) + .onRegister(casingConnectivity((block,cc) -> cc.makeCasing(block, CNSpriteShifts.REACTOR_CASING))) + .tag(BlockTags.NEEDS_DIAMOND_TOOL) + .simpleItem() + .transform(pickaxeOnly()) + .register(); - public static final BlockEntry REACTOR_CORE = CreateNuclear.REGISTRATE - .block("reactor_core", ReactorCore::new) - .properties(p -> p.explosionResistance(6F)) - .properties(p -> p.destroyTime(4F)) - .tag(BlockTags.NEEDS_DIAMOND_TOOL) - .blockstate((c, p) -> p.getVariantBuilder(c.getEntry()) - .forAllStates(state -> ConfiguredModel.builder() - .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/core/block"))) - .uvLock(false) - .build())) - .transform(pickaxeOnly()) - .simpleItem() - .register(); + public static final BlockEntry REACTOR_CORE = + CreateNuclear.REGISTRATE.block("reactor_core", ReactorCore::new) + .properties(p -> p.explosionResistance(6F)) + .properties(p -> p.destroyTime(4F)) + .tag(BlockTags.NEEDS_DIAMOND_TOOL) + .blockstate((c, p) -> + p.getVariantBuilder(c.getEntry()) + .forAllStates(state -> ConfiguredModel.builder() + .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/core/block"))) + .uvLock(false) + .build() + ) + ) + .transform(pickaxeOnly()) + .simpleItem() + .register(); - public static final BlockEntry REACTOR_FRAME = CreateNuclear.REGISTRATE - .block("reactor_frame", ReactorFrame::new) - .initialProperties(SharedProperties::stone) - .properties(p -> p.explosionResistance(3F).destroyTime(2F).noOcclusion()) - .addLayer(() -> RenderType::cutoutMipped) - .transform(pickaxeOnly()) - .tag(BlockTags.NEEDS_DIAMOND_TOOL) - .blockstate((c, p) -> p.getVariantBuilder(c.getEntry()) - .forAllStatesExcept(state -> { - ReactorFrame.Part part = state.getValue(ReactorFrame.PART); - String baseFile = "block/reactor/frame/frame_"; - ModelFile start = p.models().getExistingFile(p.modLoc(baseFile + "top")); - ModelFile middle = p.models().getExistingFile(p.modLoc(baseFile + "middle")); - ModelFile bottom = p.models().getExistingFile(p.modLoc(baseFile + "bottom")); - ModelFile none = p.models().getExistingFile(p.modLoc(baseFile + "none")); - return ConfiguredModel.builder().modelFile(switch (part) { + public static final BlockEntry REACTOR_FRAME = + CreateNuclear.REGISTRATE.block("reactor_frame", ReactorFrame::new) + .initialProperties(SharedProperties::stone) + .properties(p -> p.explosionResistance(3F).destroyTime(2F)) + .addLayer(() -> RenderType::cutoutMipped) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_DIAMOND_TOOL) + .blockstate((c, p) -> + p.getVariantBuilder(c.getEntry()) + .forAllStatesExcept(state -> { + ReactorFrame.Part part = state.getValue(ReactorFrame.PART); + String baseFile = "block/reactor/frame/frame_"; + ModelFile start = p.models().getExistingFile(p.modLoc(baseFile + "top")); + ModelFile middle = p.models().getExistingFile(p.modLoc(baseFile + "middle")); + ModelFile bottom = p.models().getExistingFile(p.modLoc(baseFile + "bottom")); + ModelFile none = p.models().getExistingFile(p.modLoc(baseFile + "none")); + return ConfiguredModel.builder().modelFile(switch (part) { case START -> start; case MIDDLE -> middle; case END -> bottom; default -> none; + }) + .uvLock(false) + .build(); }) - .uvLock(false) - .build(); - })) + ) .item(ReactorframeItem::new) .model(AssetLookup.customBlockItemModel("reactor", "frame", "item")) .build() .register(); - public static final BlockEntry REACTOR_COOLER = CreateNuclear.REGISTRATE - .block("reactor_cooler", ReactorCooler::new) - .properties(p -> p - .explosionResistance(3F) - .destroyTime(4F)) - .blockstate((c, p) -> p.getVariantBuilder(c.getEntry()).forAllStates((state) -> ConfiguredModel.builder() - .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/cooler/block"))) - .build())) + public static final BlockEntry REACTOR_COOLER = + CreateNuclear.REGISTRATE.block("reactor_cooler", ReactorCooler::new) + .properties(p -> p.explosionResistance(3F) + .destroyTime(4F)) + .blockstate((c,p) -> + p.getVariantBuilder(c.getEntry()).forAllStates((state) -> ConfiguredModel.builder() + .modelFile(p.models().getExistingFile(p.modLoc("block/reactor/cooler/block"))) + .build())) .tag(BlockTags.NEEDS_DIAMOND_TOOL) .simpleItem() .transform(pickaxeOnly()) .register(); - public static final BlockEntry REACTOR_ROD_INPUT = CreateNuclear.REGISTRATE - .block("reactor_rod_input", ReactorRodInput::new) - .initialProperties(SharedProperties::stone) - .properties(p -> p.explosionResistance(6F)) - .properties(p -> p.destroyTime(2F)) - .addLayer(() -> RenderType::cutoutMipped) - .transform(pickaxeOnly()) - .tag(BlockTags.NEEDS_DIAMOND_TOOL) - .blockstate(new ReactorRodInputGenerator()::generate) - .item() - .transform(customItemModel("reactor", "rod_input", "item")) - .register(); - - public static final BlockEntry REACTOR_FLUID_INPUT = - CreateNuclear.REGISTRATE.block("reactor_fluid_input", ReactorFluidInput::new) + public static final BlockEntry REACTOR_INPUT = + CreateNuclear.REGISTRATE.block("reactor_input", ReactorInput::new) .initialProperties(SharedProperties::stone) .properties(p -> p.explosionResistance(6F)) .properties(p -> p.destroyTime(2F)) .addLayer(() -> RenderType::cutoutMipped) .transform(pickaxeOnly()) .tag(BlockTags.NEEDS_DIAMOND_TOOL) - .blockstate(new ReactorFluidInputGenerator()::generate) + .blockstate(new ReactorInputGenerator()::generate) .item() - .transform(customItemModel("reactor", "fluid_input", "item")) + .transform(customItemModel("reactor", "input", "item")) .register(); public static final BlockEntry REACTOR_OUTPUT = @@ -180,25 +155,19 @@ public class CNBlocks { .tag(AllTags.AllBlockTags.SAFE_NBT.tag, BlockTags.NEEDS_DIAMOND_TOOL) .transform(pickaxeOnly()) .blockstate(new ReactorOutputGenerator()::generate) - .onRegister(block -> BlockStressValues.CAPACITIES.register(block, () -> 64000.0)) + .onRegister(block -> BlockStressValues.CAPACITIES.register(block, () -> 10240.0)) .item() .transform(customItemModel("reactor", "output", "item")) .register(); - public static final BlockEntry REACTOR_CONTROLLER = CreateNuclear.REGISTRATE - .block("reactor_controller", ReactorControllerBlock::new) + public static final BlockEntry REACTOR_CONTROLLER = + CreateNuclear.REGISTRATE.block("reactor_controller", ReactorControllerBlock::new) .initialProperties(SharedProperties::stone) .properties(p -> p.explosionResistance(6F)) .properties(p -> p.destroyTime(4F)) .transform(pickaxeOnly()) .tag(BlockTags.NEEDS_DIAMOND_TOOL) .blockstate(new ReactorControllerGenerator()::generate) - .transform(displaySource(CNDisplaySources.HEAT)) - .transform(displaySource(CNDisplaySources.LIQUID_LEVEL)) - .transform(displaySource(CNDisplaySources.FUEL)) - .transform(displaySource(CNDisplaySources.COOLER)) - .transform(displaySource(CNDisplaySources.REACTOR_SIZE)) - .transform(displaySource(CNDisplaySources.REACTOR_SUMMARY)) .item() .transform(customItemModel("reactor", "controller", "item")) .register(); @@ -206,7 +175,7 @@ public class CNBlocks { public static final BlockEntry REINFORCED_GLASS = CreateNuclear.REGISTRATE .block("reinforced_glass", ReinforcedGlassBlock::new) .initialProperties(() -> Blocks.GLASS) - .properties(p -> p.explosionResistance(1200.0F).destroyTime(2F)) + .properties(p -> p.explosionResistance(7.0F).destroyTime(2F)) .onRegister(CreateRegistrate.connectedTextures(() -> new EncasedCTBehaviour(CNSpriteShifts.REACTOR_GLASS))) .onRegister(casingConnectivity((block,cc) -> cc.makeCasing(block, CNSpriteShifts.REACTOR_GLASS))) .loot(RegistrateBlockLootTables::dropWhenSilkTouch) @@ -234,8 +203,10 @@ public class CNBlocks { .build() .register(); - public static final BlockEntry ENRICHING_FIRE = CreateNuclear.REGISTRATE - .block("enriching_fire", properties -> new EnrichingFireBlock(properties, 3.0f)) + + + public static final BlockEntry ENRICHING_FIRE = + CreateNuclear.REGISTRATE.block("enriching_fire", properties -> new EnrichingFireBlock(properties, 3.0f)) .initialProperties(() -> Blocks.FIRE) .properties(Properties::replaceable) .properties(Properties::noCollission) @@ -292,15 +263,16 @@ public class CNBlocks { .addModel() .end(); }) - .register(); + .register() + ; - public static final BlockEntry ENRICHING_CAMPFIRE = CreateNuclear.REGISTRATE - .block("enriching_campfire", properties -> new EnrichingCampfireBlock(properties, true, 5)) + public static final BlockEntry ENRICHING_CAMPFIRE = + CreateNuclear.REGISTRATE.block("enriching_campfire", properties -> new EnrichingCampfireBlock(properties, true, 5)) .properties(p -> p.mapColor(MapColor.PODZOL) - .instrument(NoteBlockInstrument.BASS) - .strength(2.0F) - .sound(SoundType.WOOD) - .lightLevel(EnrichingCampfireBlock::getLight)) + .instrument(NoteBlockInstrument.BASS) + .strength(2.0F) + .sound(SoundType.WOOD) + .lightLevel(EnrichingCampfireBlock::getLight)) .properties(Properties::noOcclusion) .properties(Properties::ignitedByLava) .addLayer(() -> RenderType::cutoutMipped) @@ -330,204 +302,62 @@ public class CNBlocks { default -> 0; }) .build(); - }, BlockStateProperties.SIGNAL_FIRE, BlockStateProperties.WATERLOGGED)) - .item() - .model((c, p) -> p.withExistingParent(c.getName(), new ResourceLocation("item/generated")) - .texture("layer0", p.modLoc("item/enriched/campfire"))) - .build() - .tag(CNBlockTags.FAN_PROCESSING_CATALYSTS_ENRICHED.tag) - .register(); - - - public static final BlockEntry ENRICHED_SOUL_SOIL = - CreateNuclear.REGISTRATE.block("enriched_soul_soil", Block::new) - .initialProperties(() -> Blocks.SOUL_SOIL) - .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, c.get()) - .unlockedBy("has_nether_star", RegistrateRecipeProvider.has(Items.NETHER_STAR)) - .define('S', Blocks.SOUL_SOIL) - .define('O', Blocks.OBSIDIAN) - .define('N', Items.NETHER_STAR) - .pattern("SOS") - .pattern("ONO") - .pattern("SOS") - .showNotification(true) - .save(p, CreateNuclear.asResource("crafting/" + c.getName())) + }, BlockStateProperties.SIGNAL_FIRE, BlockStateProperties.WATERLOGGED ) - .simpleItem() - .tag(BlockTags.MINEABLE_WITH_SHOVEL) - .tag(CNBlockTags.ENRICHING_FIRE_BASE_BLOCKS.tag, BlockTags.NEEDS_DIAMOND_TOOL) - .register(); - - public static final BlockEntry DEEPSLATE_URANIUM_ORE = - CreateNuclear.REGISTRATE.block("deepslate_uranium_ore", UraniumOreBlock::new) - .initialProperties(() -> Blocks.DIAMOND_ORE) - .properties(UraniumOreBlock.litBlockEmission()) - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_URANIUM) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(3.0F, 4.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 1)) - )))) - .tag(BlockTags.NEEDS_DIAMOND_TOOL, - BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/deepslate"), - CNTags.forgeBlockTag("ores/uranium") ) - .item((b, p) -> new UraniumOreItem(b, p, 3)) - .tag(CNTags.forgeItemTag("ores/uranium")) + .item() + .model((c, p) -> + p.withExistingParent(c.getName(), new ResourceLocation("item/generated")) + .texture("layer0", p.modLoc("item/enriched/campfire")) + ) .build() + .tag(CNBlockTags.FAN_PROCESSING_CATALYSTS_ENRICHED.tag) .register(); public static final BlockEntry DEEPSLATE_LEAD_ORE = CreateNuclear.REGISTRATE.block("deepslate_lead_ore", Block::new) - .initialProperties(() -> Blocks.DIAMOND_ORE) - .simpleItem() - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_LEAD) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(2.0F, 4.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 4)) - )))) - .tag(BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/deepslate"), - CNTags.forgeBlockTag("ores/lead") - ) - .item() - .tag(CNTags.forgeItemTag("ores/lead")) - .build() - .register(); - - public static final BlockEntry DEEPSLATE_THORIUM_ORE = - CreateNuclear.REGISTRATE.block("deepslate_thorium_ore", Block::new) .initialProperties(() -> Blocks.DIAMOND_ORE) .simpleItem() .transform(pickaxeOnly()) .loot((lt, b) -> lt.add(b, RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_THORIUM) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(2.0F, 5.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 5)) + lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_LEAD) + .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) )))) - .tag(BlockTags.NEEDS_DIAMOND_TOOL, - BlockTags.NEEDS_IRON_TOOL, + .tag(BlockTags.NEEDS_IRON_TOOL, CNTags.forgeBlockTag("ores"), CNTags.forgeBlockTag("ores_in_ground/deepslate"), - CNTags.forgeBlockTag("ores/thorium") + CNTags.forgeBlockTag("ores/lead"), + CNBlockTags.LEAD_ORES.tag ) .item() - .tag(CNTags.forgeItemTag("ores/thorium")) + .tag(CNItemTags.LEAD_ORES.tag, + CNTags.forgeItemTag("ores/lead")) .build() .register(); - public static final BlockEntry URANIUM_ORE = - CreateNuclear.REGISTRATE.block("uranium_ore", UraniumOreBlock::new) + public static final BlockEntry LEAD_ORE = + CreateNuclear.REGISTRATE.block("lead_ore", Block::new) .initialProperties(SharedProperties::stone) - .properties(UraniumOreBlock.litBlockEmission()) .simpleItem() .transform(pickaxeOnly()) .loot((lt, b) -> lt.add(b, RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_URANIUM) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(3.0F, 4.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 1)) + lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_LEAD) + .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) )))) - .tag(BlockTags.NEEDS_DIAMOND_TOOL, - BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/stone"), - CNTags.forgeBlockTag("ores/uranium") - ) - .item((b, p) -> new UraniumOreItem(b, p, 3)) - .tag(CNTags.forgeItemTag("ores/uranium")) - .build() - .register(); - - public static final BlockEntry LEAD_ORE = CreateNuclear.REGISTRATE.block("lead_ore", Block::new) - .initialProperties(SharedProperties::stone) - .simpleItem() - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_LEAD) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(2.0F, 4.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 4)) - )))) .tag(BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/stone"), - CNTags.forgeBlockTag("ores/lead") - ) - .item() - .tag(CNTags.forgeItemTag("ores/lead")) - .build() - .register(); - - - public static final BlockEntry THORIUM_ORE = - CreateNuclear.REGISTRATE.block("thorium_ore", Block::new) - .initialProperties(SharedProperties::stone) - .simpleItem() - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_THORIUM) - .apply(SetItemCountFunction.setCount(UniformGenerator.between(2.0F, 5.0F))) - .apply(ApplyBonusCount.addUniformBonusCount(Enchantments.BLOCK_FORTUNE, 5)) - )))) - .tag(BlockTags.NEEDS_DIAMOND_TOOL, - BlockTags.NEEDS_IRON_TOOL, CNTags.forgeBlockTag("ores"), CNTags.forgeBlockTag("ores_in_ground/stone"), - CNTags.forgeBlockTag("ores/thorium") + CNTags.forgeBlockTag("ores/lead"), + CNBlockTags.LEAD_ORES.tag ) .item() - .tag(CNTags.forgeItemTag("ores/thorium")) + .tag(CNItemTags.LEAD_ORES.tag, + CNTags.forgeItemTag("ores/lead")) .build() .register(); - public static final BlockEntry NITRATE_ORE = - CreateNuclear.REGISTRATE.block("nitrate_ore", Block::new) - .initialProperties(SharedProperties::stone) - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.NITRATE) - .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) - )))) - .tag(BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/stone"), - CNTags.forgeBlockTag("ores/nitrate") - ) - .item() - .tag(CNTags.forgeItemTag("ores/nitrate")) - .build() - .register(); - - public static final BlockEntry DEEPSLATE_NITRATE_ORE = - CreateNuclear.REGISTRATE.block("deepslate_nitrate_ore", Block::new) - .initialProperties(SharedProperties::stone) - .simpleItem() - .transform(pickaxeOnly()) - .loot((lt, b) -> lt.add(b, - RegistrateBlockLootTables.createSilkTouchDispatchTable(b, - lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.NITRATE) - .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) - )))) - .tag(BlockTags.NEEDS_IRON_TOOL, - CNTags.forgeBlockTag("ores"), - CNTags.forgeBlockTag("ores_in_ground/deepslate"), - CNTags.forgeBlockTag("ores/nitrate") - ) - .item() - .tag(CNTags.forgeItemTag("ores/nitrate")) - .build() - .register(); - public static final BlockEntry RAW_URANIUM_BLOCK = CreateNuclear.REGISTRATE.block("raw_uranium_block", Block::new) .initialProperties(SharedProperties::stone) @@ -541,12 +371,13 @@ public class CNBlocks { .pattern("RRR") .pattern("RRR") .save(p, CreateNuclear.asResource("crafting/" + c.getName()))) - .item((b, p) -> new UraniumOreItem(b, p, 27)) + .item() .tag(CNTags.forgeItemTag("storage_blocks/raw_uranium")) .build() .register(); - public static final BlockEntry RAW_LEAD_BLOCK = CreateNuclear.REGISTRATE.block("raw_lead_block", Block::new) + public static final BlockEntry RAW_LEAD_BLOCK = + CreateNuclear.REGISTRATE.block("raw_lead_block", Block::new) .initialProperties(SharedProperties::stone) .transform(pickaxeOnly()) .tag(CNTags.forgeBlockTag("storage_blocks/raw_lead")) @@ -562,24 +393,6 @@ public class CNBlocks { .build() .register(); - - public static final BlockEntry RAW_THORIUM_BLOCK = - CreateNuclear.REGISTRATE.block("raw_thorium_block", Block::new) - .initialProperties(SharedProperties::stone) - .transform(pickaxeOnly()) - .tag(BlockTags.NEEDS_DIAMOND_TOOL, CNTags.forgeBlockTag("storage_blocks/raw_thorium")) - .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.DECORATIONS, c.get()) - .unlockedBy("has_raw_materials_thorium", RegistrateRecipeProvider.has(CNTags.forgeItemTag("raw_materials/thorium"))) - .define('R', CNTags.forgeItemTag("raw_materials/thorium")) - .pattern("RRR") - .pattern("RRR") - .pattern("RRR") - .save(p, CreateNuclear.asResource("crafting/raw/" + c.getName()))) - .item() - .tag(CNTags.forgeItemTag("storage_blocks/raw_thorium")) - .build() - .register(); - public static final BlockEntry LEAD_BLOCK = CreateNuclear.REGISTRATE.block("lead_block", Block::new) .initialProperties(SharedProperties::stone) @@ -589,36 +402,91 @@ public class CNBlocks { .tag(CNTags.forgeItemTag("storage_blocks/lead")) .build() .register(); - - public static final BlockEntry THORIUM_BLOCK = - CreateNuclear.REGISTRATE.block("thorium_block", Block::new) - .initialProperties(SharedProperties::stone) + + public static final BlockEntry ENRICHED_SOUL_SOIL = + CreateNuclear.REGISTRATE.block("enriched_soul_soil", Block::new) + .initialProperties(() -> Blocks.SOUL_SOIL) + .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, c.get()) + .unlockedBy("has_nether_star", RegistrateRecipeProvider.has(Items.NETHER_STAR)) + .define('S', Blocks.SOUL_SOIL) + .define('O', Blocks.OBSIDIAN) + .define('N', Items.NETHER_STAR) + .pattern("SOS") + .pattern("ONO") + .pattern("SOS") + .showNotification(true) + .save(p, CreateNuclear.asResource("crafting/" + c.getName())) + ) + .simpleItem() + .tag(BlockTags.MINEABLE_WITH_SHOVEL) + .tag(CNBlockTags.ENRICHING_FIRE_BASE_BLOCKS.tag, BlockTags.NEEDS_DIAMOND_TOOL) + .register(); + + public static final BlockEntry DEEPSLATE_URANIUM_ORE = + CreateNuclear.REGISTRATE.block("deepslate_uranium_ore", UraniumOreBlock::new) + .initialProperties(() -> Blocks.DIAMOND_ORE) + .properties(UraniumOreBlock.litBlockEmission()) .transform(pickaxeOnly()) - .tag(CNTags.forgeBlockTag("storage_blocks/thorium")) + .loot((lt, b) -> lt.add(b, + RegistrateBlockLootTables.createSilkTouchDispatchTable(b, + lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_URANIUM) + .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) + )))) + .tag(BlockTags.NEEDS_DIAMOND_TOOL, + BlockTags.NEEDS_IRON_TOOL, + CNTags.forgeBlockTag("ores"), + CNTags.forgeBlockTag("ores_in_ground/deepslate"), + CNTags.forgeBlockTag("ores/uranium"), + CNBlockTags.URANIUM_ORES.tag + ) .item() - .tag(CNTags.forgeItemTag("storage_blocks/thorium")) + .tag(CNItemTags.URANIUM_ORES.tag, + CNTags.forgeItemTag("ores/uranium")) .build() .register(); - public static final BlockEntry STEEL_BLOCK = CreateNuclear.REGISTRATE.block("steel_block", Block::new) + public static final BlockEntry URANIUM_ORE = + CreateNuclear.REGISTRATE.block("uranium_ore", UraniumOreBlock::new) .initialProperties(SharedProperties::stone) + .properties(UraniumOreBlock.litBlockEmission()) + .simpleItem() .transform(pickaxeOnly()) - .tag(CNTags.forgeBlockTag("storage_blocks/steel")) + .loot((lt, b) -> lt.add(b, + RegistrateBlockLootTables.createSilkTouchDispatchTable(b, + lt.applyExplosionDecay(b, LootItem.lootTableItem(CNItems.RAW_URANIUM) + .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) + )))) + .tag(BlockTags.NEEDS_DIAMOND_TOOL, + BlockTags.NEEDS_IRON_TOOL, + CNTags.forgeBlockTag("ores"), + CNTags.forgeBlockTag("ores_in_ground/stone"), + CNTags.forgeBlockTag("ores/uranium"), + CNBlockTags.URANIUM_ORES.tag + ) .item() - .tag(CNTags.forgeItemTag("storage_blocks/steel")) + .tag(CNItemTags.URANIUM_ORES.tag, + CNTags.forgeItemTag("ores/uranium")) .build() .register(); - public static final BlockEntry REACTOR_ALARM = - CreateNuclear.REGISTRATE.block("reactor_alarm", ReactorAlarm::new) + public static final BlockEntry STEEL_BLOCK = + CreateNuclear.REGISTRATE.block("steel_block", Block::new) .initialProperties(SharedProperties::stone) .transform(pickaxeOnly()) + .tag(CNTags.forgeBlockTag("storage_blocks/steel")) .item() + .tag(CNTags.forgeItemTag("storage_blocks/steel")) .build() .register(); + /*public static final BlockEntry TEST_EVENT_TRIGGER_BLOCK = CreateNuclear.REGISTRATE.block("test_event_trigger_block", EventTriggerBlock::new) + .defaultBlockstate() + .defaultLang() + .simpleItem() + .register();*/ + public static void register() { CreateNuclear.LOGGER.info("Registering ModBlocks for " + CreateNuclear.MOD_ID); } -} \ No newline at end of file +} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNClientProxy.java b/src/main/java/net/nuclearteam/createnuclear/CNClientProxy.java deleted file mode 100644 index 15095a99e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNClientProxy.java +++ /dev/null @@ -1,72 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.BufferBuilder; -import com.mojang.blaze3d.vertex.DefaultVertexFormat; -import com.mojang.blaze3d.vertex.Tesselator; -import com.mojang.blaze3d.vertex.VertexFormat; -import it.unimi.dsi.fastutil.ints.Int2ObjectMap; -import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.GameRenderer; -import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; -import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -@OnlyIn(Dist.CLIENT) -public class CNClientProxy { - - public static final ResourceLocation BOMB_FLASH = CreateNuclear.asResource("textures/misc/bomb_flash.png"); - - public static int muteNonNukeSoundsFor = 0; - public static int renderNukeFlashFor = 0; - public static int renderNukeSkyDarkFor = 0; - public static float prevNukeFlashAmount = 0; - public static float nukeFlashAmount = 0; - - public static int lastTremorTick = -1; - public static float[] randomTremorOffsets = new float[3]; - - public static final Int2ObjectMap ENTITY_SOUND_INSTANCE_MAP = new Int2ObjectOpenHashMap<>(); - - public static float getNukeFlashAmount(float partialTicks) { - return prevNukeFlashAmount + (nukeFlashAmount - prevNukeFlashAmount) * partialTicks; - } - - public static void preScreenRender(float partialTick) { - float screenEffectIntensity = Minecraft.getInstance().options.screenEffectScale().get().floatValue(); - float currentNukeFlash = getNukeFlashAmount(partialTick); - - if (currentNukeFlash > 0 && CNConfigs.client().nuclearBombFlash.get()) { - int screenWidth = Minecraft.getInstance().getWindow().getGuiScaledWidth(); - int screenHeight = Minecraft.getInstance().getWindow().getGuiScaledHeight(); - - RenderSystem.disableDepthTest(); - RenderSystem.depthMask(false); - RenderSystem.enableBlend(); - RenderSystem.defaultBlendFunc(); - RenderSystem.setShader(GameRenderer::getPositionTexShader); - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, currentNukeFlash * screenEffectIntensity); - RenderSystem.setShaderTexture(0, BOMB_FLASH); - - Tesselator tesselator = Tesselator.getInstance(); - BufferBuilder bufferbuilder = tesselator.getBuilder(); - bufferbuilder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - bufferbuilder.vertex(0.0D, screenHeight, -90.0D).uv(0.0F, 1.0F).endVertex(); - bufferbuilder.vertex(screenWidth, screenHeight, -90.0D).uv(1.0F, 1.0F).endVertex(); - bufferbuilder.vertex(screenWidth, 0.0D, -90.0D).uv(1.0F, 0.0F).endVertex(); - bufferbuilder.vertex(0.0D, 0.0D, -90.0D).uv(0.0F, 0.0F).endVertex(); - tesselator.end(); - - RenderSystem.depthMask(true); - RenderSystem.enableDepthTest(); - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); - } - } - - public static boolean isFarFromCamera(double x, double y, double z) { - return Minecraft.getInstance().gameRenderer.getMainCamera().getPosition().distanceToSqr(x, y, z) >= 256.0D; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNDamageTypes.java b/src/main/java/net/nuclearteam/createnuclear/CNDamageTypes.java index 0488909fe..301ae82d4 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNDamageTypes.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNDamageTypes.java @@ -1,6 +1,5 @@ package net.nuclearteam.createnuclear; -import com.simibubi.create.foundation.damageTypes.DamageTypeBuilder; import net.minecraft.core.registries.Registries; import net.minecraft.data.worldgen.BootstapContext; import net.minecraft.resources.ResourceKey; @@ -8,17 +7,11 @@ @SuppressWarnings("unused") public class CNDamageTypes { - public static final ResourceKey - RADIATION = key("radiation"), - FAN_RADIATION = key("fan_radiation") - ; - private static ResourceKey key(String name) { return ResourceKey.create(Registries.DAMAGE_TYPE, CreateNuclear.asResource(name)); } public static void bootstrap(BootstapContext ctx) { - new DamageTypeBuilder(RADIATION).register(ctx); - new DamageTypeBuilder(FAN_RADIATION).register(ctx); + } } diff --git a/src/main/java/net/nuclearteam/createnuclear/CNDisplaySources.java b/src/main/java/net/nuclearteam/createnuclear/CNDisplaySources.java deleted file mode 100644 index 24b9afd11..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNDisplaySources.java +++ /dev/null @@ -1,26 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.simibubi.create.api.behaviour.display.DisplaySource; -import com.simibubi.create.foundation.data.CreateRegistrate; -import com.tterrag.registrate.util.entry.RegistryEntry; -import net.nuclearteam.createnuclear.content.redstone.displayLink.source.*; - -import java.util.function.Supplier; - -public class CNDisplaySources { - private static final CreateRegistrate REGISTRATE = CreateNuclear.REGISTRATE; - - public static final RegistryEntry HEAT = simple("heat", HeatDisplaySource::new); - public static final RegistryEntry LIQUID_LEVEL = simple("liquid_level", LiquidLevelDisplaySource::new); - public static final RegistryEntry REACTOR_SUMMARY = simple("reactor_summary", ReactorSummaryDisplaySource::new); - public static final RegistryEntry FUEL = simple("fuel", FuelDisplaySource::new); - public static final RegistryEntry COOLER = simple("cooler", CoolerDisplaySource::new); - public static final RegistryEntry REACTOR_SIZE = simple("reactor_size", ReactorSizeDisplaySource::new); - - private static RegistryEntry simple(String name, Supplier supplier) { - return REGISTRATE.displaySource(name, supplier).register(); - } - - public static void register() { - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNEffects.java b/src/main/java/net/nuclearteam/createnuclear/CNEffects.java index b2d72e951..a3be985a5 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNEffects.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNEffects.java @@ -5,14 +5,12 @@ import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; -import net.nuclearteam.createnuclear.content.effects.IodineEffect; -import net.nuclearteam.createnuclear.content.radiation.RadiationEffect; +import net.nuclearteam.createnuclear.content.effects.RadiationEffect; public class CNEffects { public static final DeferredRegister EFFECTS = DeferredRegister.create(ForgeRegistries.MOB_EFFECTS, CreateNuclear.MOD_ID); public static final RegistryObject RADIATION = EFFECTS.register("radiation", RadiationEffect::new); - public static final RegistryObject IODINE = EFFECTS.register("iodine", IodineEffect::new); public static void register(IEventBus eventBus) { EFFECTS.register(eventBus); diff --git a/src/main/java/net/nuclearteam/createnuclear/CNEntityType.java b/src/main/java/net/nuclearteam/createnuclear/CNEntityType.java index 1dc3ee45d..335bc01e7 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNEntityType.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNEntityType.java @@ -1,8 +1,6 @@ package net.nuclearteam.createnuclear; import com.tterrag.registrate.util.entry.EntityEntry; -import net.minecraft.client.renderer.entity.NoopRenderer; -import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.MobCategory; import net.minecraft.world.level.storage.loot.LootTable; import net.minecraftforge.client.event.EntityRenderersEvent; @@ -14,14 +12,9 @@ import net.nuclearteam.createnuclear.content.contraptions.irradiated.chicken.IrradiatedChicken; import net.nuclearteam.createnuclear.content.contraptions.irradiated.chicken.IrradiatedChickenModel; import net.nuclearteam.createnuclear.content.contraptions.irradiated.chicken.IrradiatedChickenRenderer; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.cow.IrradiatedCow; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.cow.IrradiatedCowModel; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.cow.IrradiatedCowRenderer; import net.nuclearteam.createnuclear.content.contraptions.irradiated.wolf.IrradiatedWolf; import net.nuclearteam.createnuclear.content.contraptions.irradiated.wolf.IrradiatedWolfModel; import net.nuclearteam.createnuclear.content.contraptions.irradiated.wolf.IrradiatedWolfRenderer; -import net.nuclearteam.createnuclear.content.explosion.NuclearExplosionEntity; -import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorModel; public class CNEntityType { @@ -55,36 +48,10 @@ public class CNEntityType { .attributes(IrradiatedWolf::createAttributes) .register(); - public static final EntityEntry IRRADIATED_COW = CreateNuclear.REGISTRATE - .entity("irradiated_cow", IrradiatedCow::new, MobCategory.CREATURE) - .loot((tb, e) -> tb.add(e, LootTable.lootTable())) - .tag(CNEntityTags.IRRADIATED_IMMUNE.tag) - .properties(p -> p.sized(0.6f, 0.85f)) - .lang("Irradiated Cow") - .renderer(() -> IrradiatedCowRenderer::new) - .attributes(IrradiatedCow::createAttributes) - .register(); - - public static final EntityEntry NUCLEAR_EXPLOSION = - CreateNuclear.REGISTRATE.entity("nuclear_explosion", NuclearExplosionEntity::new, MobCategory.MISC) - .properties(builder -> builder - .sized(0.2F, 0.2F) - .setTrackingRange(128) - .setUpdateInterval(1) - .setShouldReceiveVelocityUpdates(true) - ) - // Invisible entity: the mushroom cloud particle does the actual rendering - .renderer(() -> NoopRenderer::new) - .register(); - public static void registerModelLayer(EntityRenderersEvent.RegisterLayerDefinitions event) { event.registerLayerDefinition(CNModelLayers.IRRADIATED_CAT, IrradiatedCatModel::createBodyLayer); event.registerLayerDefinition(CNModelLayers.IRRADIATED_CHICKEN, IrradiatedChickenModel::createBodyLayer); event.registerLayerDefinition(CNModelLayers.IRRADIATED_WOLF, IrradiatedWolfModel::createBodyLayer); - event.registerLayerDefinition(CNModelLayers.IRRADIATED_COW, IrradiatedCowModel::createBodyLayer); - - event.registerLayerDefinition(CNModelLayers.ANTI_IRRADIATION_ARMOR, AntiRadiationArmorModel::createBodyLayer); - } public static void register() {} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNFluids.java b/src/main/java/net/nuclearteam/createnuclear/CNFluids.java index abffe7d1c..ba0eb278f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNFluids.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNFluids.java @@ -5,22 +5,14 @@ import com.tterrag.registrate.util.entry.FluidEntry; import net.createmod.catnip.theme.Color; import net.minecraft.core.BlockPos; -import net.minecraft.core.BlockSource; -import net.minecraft.core.dispenser.DefaultDispenseItemBehavior; -import net.minecraft.core.dispenser.DispenseItemBehavior; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.BucketItem; -import net.minecraft.world.item.DispensibleContainerItem; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; import net.minecraft.world.level.BlockAndTintGetter; -import net.minecraft.world.effect.MobEffects; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.DispenserBlock; +import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.material.FluidState; import net.minecraftforge.common.ForgeMod; @@ -32,10 +24,6 @@ import net.minecraftforge.fluids.FluidType; import net.minecraftforge.fluids.ForgeFlowingFluid; import net.nuclearteam.createnuclear.content.decoration.palettes.CNPaletteStoneTypes; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.content.radiation.RadiationBucketItem; - import org.joml.Vector3f; import net.nuclearteam.createnuclear.CNTags.CNFluidTags; @@ -43,8 +31,6 @@ import java.util.function.Supplier; public class CNFluids { - private static final double URANIUM_FLUID_DOSE = 5.0D; - public static final FluidEntry URANIUM = CreateNuclear.REGISTRATE.standardFluid("uranium", SolidRenderedPlaceableFluidtype.create(0x38FF08, () -> 1f / 32f)) .lang("Liquid Uranium") @@ -62,113 +48,23 @@ public class CNFluids { .explosionResistance(100f) ) .source(ForgeFlowingFluid.Source::new) - .bucket((s, p) -> new RadiationBucketItem(s, p, 20)) - .onRegister(CNFluids::registerFluidDispenseBehavior) + .bucket() .tag(CNTags.forgeItemTag("buckets/uranium")) .lang("Uranium Bucket") .build() .register(); - public static final FluidEntry THORIUM = - CreateNuclear.REGISTRATE.standardFluid("thorium", SolidRenderedPlaceableFluidtype.create(0x38f9ff, () -> 1f / 32f)) - .lang("Liquid Thorium") - .tag(CNFluidTags.THORIUM.tag) - .properties(p -> p.viscosity(200) - .density(100) - .canSwim(false) - .sound(SoundActions.BUCKET_FILL, SoundEvents.BUCKET_FILL_LAVA) - .sound(SoundActions.BUCKET_EMPTY, SoundEvents.BUCKET_EMPTY_LAVA) - .canDrown(false) - ) - .fluidProperties(f -> f.levelDecreasePerBlock(2) - .tickRate(15) - .slopeFindDistance(6) - .explosionResistance(100f) - ) - .source(ForgeFlowingFluid.Source::new) - .bucket() - .onRegister(CNFluids::registerFluidDispenseBehavior) - .tag(CNTags.forgeItemTag("buckets/thorium")) - .lang("Thorium Bucket") - .build() - .register(); - - public static final FluidEntry LIQUID_NITROGEN = - CreateNuclear.REGISTRATE.standardFluid("nitrogen", SolidRenderedPlaceableFluidtype.create(0x23ECD5, () -> 1f / 16f)) - .lang("Liquid Nitrogen") - .tag(CNFluidTags.NITROGEN.tag) - .properties(p -> p.viscosity(1000) - .density(1000) - .canSwim(true) - .sound(SoundActions.BUCKET_FILL, SoundEvents.BUCKET_FILL_AXOLOTL) - .sound(SoundActions.BUCKET_EMPTY, SoundEvents.BUCKET_EMPTY_FISH) - .canDrown(false) - ) - .fluidProperties(f -> f.levelDecreasePerBlock(5) - .tickRate(10) - .slopeFindDistance(6) - .explosionResistance(100f) - ) - .source(ForgeFlowingFluid.Source::new) - //.onRegister(ReactorFluidTypesValue.setReactorFluidTypeInfos(8196, 100)) - .bucket() - .onRegister(CNFluids::registerFluidDispenseBehavior) - .lang("Nitrogen Bucket") - .tag(CNTags.forgeItemTag("buckets/nitrogen")) - .build() - .register(); - - public static void register() {} public static void handleFluidEffect(LivingEvent.LivingTickEvent event) { LivingEntity entity = event.getEntity(); - if (!entity.isAlive() || entity.isSpectator()) return; - - Level level = entity.level(); - - // 1. Uranium: applies radiation contagion - if (entity.isInFluidType(URANIUM.getType())) { - if (entity.tickCount % 20 == 0) { - RadiationCapability.applyContagion(entity, URANIUM_FLUID_DOSE, 100); + if (entity.isAlive() && !(entity.isSpectator())) { + if (entity.tickCount % 20 == 0) return; + if (entity.isInFluidType(URANIUM.getType())) { + entity.addEffect(new MobEffectInstance(CNEffects.RADIATION.get(), 100, 0)); } } - // 2. Liquid nitrogen: freezes the entity like powder snow - else if (entity.isInFluidType(LIQUID_NITROGEN.getType())) { - // Extinguish fire immediately on contact - if (entity.isOnFire()) { - entity.clearFire(); - } - - if (entity instanceof Player player && player.isSwimming()) { - CNAdvancement.CRYOGENIC_BAPTISM.awardTo(player); - } - - int currentTicks = entity.getTicksFrozen(); - int maxTicks = entity.getTicksRequiredToFreeze(); - int freezeSpeed = 3; - - if (level.isClientSide) { - // Target maxTicks + 1 so vanilla's client-side -1 decay settles exactly at maxTicks - entity.setTicksFrozen(Math.min(maxTicks + 1, currentTicks + freezeSpeed + 1)); - } else { - // Target maxTicks + 2 so vanilla's server-side -2 decay settles exactly at maxTicks - entity.setTicksFrozen(Math.min(maxTicks + 2, currentTicks + freezeSpeed + 2)); - - // Check the freeze state after applying the compensation above - if (entity.getTicksFrozen() >= maxTicks && entity.tickCount % 10 == 0) { - entity.hurt(entity.damageSources().freeze(), 2.0F); - } - - entity.addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN, 40, 1, true, false, false)); - } - } - - // 3. Thorium: burns the entity like lava - else if (entity.isInFluidType(THORIUM.getType())) { - entity.lavaHurt(); - } } public static void registerFluidInteractions() { @@ -193,20 +89,17 @@ public static void registerFluidInteractions() { private static class SolidRenderedPlaceableFluidtype extends AllFluids.TintedFluidType { private Vector3f fogColor; - private int fogIntColor; private Supplier fogDistance; public static FluidTypeFactory create(int fogColor, Supplier fogDistance) { return (p, s, f) -> { SolidRenderedPlaceableFluidtype fluidtype = new SolidRenderedPlaceableFluidtype(p,s,f); fluidtype.fogColor = new Color(fogColor, false).asVectorF(); - fluidtype.fogIntColor = fogColor; fluidtype.fogDistance = fogDistance; return fluidtype; }; } - private SolidRenderedPlaceableFluidtype(Properties properties, ResourceLocation stillTecture, ResourceLocation flowingTexture) { super(properties, stillTecture, flowingTexture); } @@ -218,7 +111,7 @@ protected int getTintColor(FluidStack stack) { @Override protected int getTintColor(FluidState state, BlockAndTintGetter getter, BlockPos pos) { - return fogIntColor; + return 0x38FF08; } @Override @@ -231,22 +124,4 @@ protected float getFogDistanceModifier() { return fogDistance.get(); } } - - private static final DispenseItemBehavior DEFAULT = new DefaultDispenseItemBehavior(); - private static final DispenseItemBehavior DISPENSE_FLUID = new DefaultDispenseItemBehavior(){ - @Override - protected ItemStack execute(BlockSource pSource, ItemStack pStack) { - DispensibleContainerItem dispensibleContainerItem = (DispensibleContainerItem) pStack.getItem(); - BlockPos pos = pSource.getPos().relative(pSource.getBlockState().getValue(DispenserBlock.FACING)); - Level level = pSource.getLevel(); - if (dispensibleContainerItem.emptyContents(null, level, pos, null, pStack)) { - return new ItemStack(Items.BUCKET); - } - return DEFAULT.dispense(pSource, pStack); - } - }; - - private static void registerFluidDispenseBehavior(BucketItem bucket) { - DispenserBlock.registerBehavior(bucket, DISPENSE_FLUID); - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/CNItems.java b/src/main/java/net/nuclearteam/createnuclear/CNItems.java index ee3b7054b..a37e3504e 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNItems.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNItems.java @@ -1,68 +1,61 @@ package net.nuclearteam.createnuclear; -import com.tterrag.registrate.util.entry.ItemEntry; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Boot; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Chestplate; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Chestplate.getChestplateTag; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Helmet; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Helmet.getHelmetTag; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Leggings; + +import static net.nuclearteam.createnuclear.CNTags.CNItemTags; +import static net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Leggings.getLeggingsTag; + import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.tterrag.registrate.providers.RegistrateRecipeProvider; +import com.tterrag.registrate.util.entry.ItemEntry; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.data.recipes.ShapedRecipeBuilder; import net.minecraft.data.recipes.ShapelessRecipeBuilder; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.Mob; import net.minecraft.world.food.FoodProperties; -import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.common.ForgeSpawnEggItem; -import net.nuclearteam.createnuclear.content.biome.BiomeIrradiationExtractorItem; -import net.nuclearteam.createnuclear.foundation.data.CNBuilderTransformers; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; -import net.nuclearteam.createnuclear.api.data.recipe.SmithingClothRecipeBuilder; -import net.nuclearteam.createnuclear.content.radiation.RadiationItem; -import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem; -import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem.Cloths; -import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItem; -import net.nuclearteam.createnuclear.foundation.utility.TextUtils; import net.minecraft.world.item.Items; +import net.minecraftforge.common.ForgeSpawnEggItem; import net.nuclearteam.createnuclear.CNTags.CNItemTags; -import net.nuclearteam.createnuclear.api.ItemRodTypesValue; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; +import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem; import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Boot; import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Chestplate; import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Helmet; import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.Leggings; +import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem; +import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItem; import net.nuclearteam.createnuclear.foundation.item.DyedItemsList; +import net.nuclearteam.createnuclear.foundation.utility.TextUtils; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.function.Supplier; -import static net.nuclearteam.createnuclear.foundation.data.CNBuilderTransformers.biomeRestoreModel; -import static net.nuclearteam.createnuclear.foundation.data.CNBuilderTransformers.coloredArmorModel; - -@SuppressWarnings({"unused", "deprecation"}) +@SuppressWarnings({"deprecation"}) public class CNItems { - public static final ItemEntry + public static final ItemEntry YELLOWCAKE = CreateNuclear.REGISTRATE - .item("yellowcake", p -> new RadiationItem(p, 4)) + .item("yellowcake", Item::new) .properties(p -> p.food(new FoodProperties.Builder() .nutrition(20) .saturationMod(0.3F) .alwaysEat() - .effect(new MobEffectInstance(CNEffects.RADIATION.get(),600,2), 1.0F) + .effect((new MobEffectInstance(CNEffects.RADIATION.get(),600,2)) , 1.0F) .build()) ) .register(), - GRAPHENE = CreateNuclear.REGISTRATE - .item("graphene", Item::new) - .register(), - - ENRICHED_YELLOWCAKE = CreateNuclear.REGISTRATE - .item("enriched_yellowcake", p -> new RadiationItem(p, 2)) - .register(), - RAW_LEAD = CreateNuclear.REGISTRATE .item("raw_lead", Item::new) .tag(CNTags.forgeItemTag("raw_ores"), CNTags.forgeItemTag("raw_materials"), CNTags.forgeItemTag("raw_materials/lead")) @@ -74,59 +67,37 @@ public class CNItems { .register(), RAW_URANIUM = CreateNuclear.REGISTRATE - .item("raw_uranium", p -> new RadiationItem(p, 3)) + .item("raw_uranium", Item::new) .tag(CNTags.forgeItemTag("raw_ores"), CNTags.forgeItemTag("raw_materials"), CNTags.forgeItemTag("raw_materials/uranium")) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_raw_uranium", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/raw_uranium"))) - .requires(CNTags.forgeItemTag("storage_blocks/raw_uranium")) - .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) - ) - .register(), - - RAW_THORIUM = CreateNuclear.REGISTRATE - .item("raw_thorium", Item::new) - .tag(CNTags.forgeItemTag("raw_ores"), CNTags.forgeItemTag("raw_materials"), CNTags.forgeItemTag("raw_materials/thorium")) - .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_raw_thorium", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/raw_thorium"))) - .requires(CNTags.forgeItemTag("storage_blocks/raw_thorium")) + .unlockedBy("has_storage_blocks_raw_uranium", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/raw_uranium"))) + .requires(CNTags.forgeItemTag("storage_blocks/raw_uranium")) .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) ) .register(), - THORIUM_DUST = CreateNuclear.REGISTRATE - .item("thorium_dust", Item::new) - .tag(CNTags.forgeItemTag("dusts"), CNTags.forgeItemTag("dusts/thorium")) - .register(), - URANIUM_POWDER = CreateNuclear.REGISTRATE - .item("uranium_powder", p -> new RadiationItem(p, 2)) + .item("uranium_powder", Item::new) .tag(CNTags.forgeItemTag("dusts"), CNTags.forgeItemTag("dusts/uranium")) .register(), - COAL_DUST = CreateNuclear.REGISTRATE - .item("coal_dust", Item::new) - .tag(CNTags.forgeItemTag("dusts"), CNTags.forgeItemTag("dusts/coal")) - .register(), - - STEEL_INGOT = CreateNuclear.REGISTRATE .item("steel_ingot", Item::new) .tag(CNTags.forgeItemTag("ingots"), CNTags.forgeItemTag("ingots/steel")) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_steel", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/steel"))) - .requires(CNTags.forgeItemTag("storage_blocks/steel")) - .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) + .unlockedBy("has_storage_blocks_steel", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/steel"))) + .requires(CNTags.forgeItemTag("storage_blocks/steel")) + .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) ) .register(), + COAL_DUST = CreateNuclear.REGISTRATE + .item("coal_dust", Item::new) + .tag(CNTags.forgeItemTag("dusts"), CNTags.forgeItemTag("coal_dusts"), CNTags.forgeItemTag("dusts/coal")) + .register(), + GRAPHITE_ROD = CreateNuclear.REGISTRATE .item("graphite_rod", Item::new) - .onRegister(ItemRodTypesValue.setRodTypeInfos(new RodType.Builder() - .baseRodHeat(() -> CNConfigs.server().rods.graphiteBaseValue.get()) - .proximityRodHeat(() -> CNConfigs.server().rods.graphiteProximityMalus.getF()) - .rodTimer(() -> CNConfigs.server().rods.graphiteRodLifetime.get()) - .ratio(() -> CNConfigs.server().rods.graphiteHeatRatio.get()) - .coolerRodType())) .tag(CNTags.forgeItemTag("rods"), CNItemTags.COOLER.tag) .register(), @@ -134,42 +105,24 @@ public class CNItems { .item("lead_ingot", Item::new) .tag(CNTags.forgeItemTag("ingots"), CNTags.forgeItemTag("ingots/lead")) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(),9) - .unlockedBy("has_storage_blocks_lead", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/lead"))) - .requires(CNTags.forgeItemTag("storage_blocks/lead")) - .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) - ) - .register(), - - THORIUM_INGOT = CreateNuclear.REGISTRATE - .item("thorium_ingot", Item::new) - .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/thorium_ingot"))) - .tag(CNTags.forgeItemTag("ingots"), CNTags.forgeItemTag("ingots/thorium")) - .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_thorium", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/thorium"))) - .requires(CNTags.forgeItemTag("storage_blocks/thorium")) + .unlockedBy("has_storage_blocks_lead", RegistrateRecipeProvider.has(CNTags.forgeItemTag("storage_blocks/lead"))) + .requires(CNTags.forgeItemTag("storage_blocks/lead")) .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) ) .register(), - STEEL_NUGGET = CreateNuclear.REGISTRATE .item("steel_nugget", Item::new) .tag(CNTags.forgeItemTag("nuggets"), CNTags.forgeItemTag("nuggets/steel")) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_steel_nugget", RegistrateRecipeProvider.has(CNTags.forgeItemTag("ingots/steel"))) - .requires(CNTags.forgeItemTag("ingots/steel")) - .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) + .unlockedBy("has_storage_blocks_steel_nugget", RegistrateRecipeProvider.has(CNTags.forgeItemTag("ingots/steel"))) + .requires(CNTags.forgeItemTag("ingots/steel")) + .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) ) .register(), URANIUM_ROD = CreateNuclear.REGISTRATE - .item("uranium_rod", p -> new RadiationItem(p, 100)) - .onRegister(ItemRodTypesValue.setRodTypeInfos(new RodType.Builder() - .baseRodHeat(() -> CNConfigs.server().rods.uraniumBaseValue.get()) - .proximityRodHeat(() ->(float) CNConfigs.server().rods.uraniumProximityBonus.get()) - .rodTimer(() -> CNConfigs.server().rods.uraniumRodLifetime.get()) - .ratio(() -> CNConfigs.server().rods.uraniumHeatRatio.get()) - .fuelRodType())) + .item("uranium_rod", Item::new) .tag(CNTags.forgeItemTag("rods"), CNItemTags.FUEL.tag) .register(), @@ -177,184 +130,117 @@ public class CNItems { .item("lead_nugget", Item::new) .tag(CNTags.forgeItemTag("nuggets"), CNTags.forgeItemTag("nuggets/lead")) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_lead_nugget", RegistrateRecipeProvider.has(CNTags.forgeItemTag("ingots/lead"))) - .requires(CNTags.forgeItemTag("ingots/lead")) - .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) - ) - .register(), - - THORIUM_NUGGET = CreateNuclear.REGISTRATE - .item("thorium_nugget", Item::new) - .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/thorium_nugget"))) - .tag(CNTags.forgeItemTag("nuggets"), CNTags.forgeItemTag("nuggets/thorium")) - .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, c.get(), 9) - .unlockedBy("has_storage_blocks_steel_nugget", RegistrateRecipeProvider.has(CNTags.forgeItemTag("ingots/thorium"))) - .requires(CNTags.forgeItemTag("ingots/thorium")) + .unlockedBy("has_storage_blocks_lead_nugget", RegistrateRecipeProvider.has(CNTags.forgeItemTag("ingots/lead"))) + .requires(CNTags.forgeItemTag("ingots/lead")) .save(p, CreateNuclear.asResource("crafting/" + c.getName() + "_from_decompacting")) ) .register(), - NITRATE = CreateNuclear.REGISTRATE - .item("nitrate", Item::new) - .lang("Nitrate") - .register(), - - NITROGEN_CONCENTRATE = CreateNuclear.REGISTRATE - .item("nitrogen_concentrate", Item::new) - .lang("Nitrogen Concentrate") - .register(), - - COOLED_NITROGEN_CONCENTRATE = CreateNuclear.REGISTRATE - .item("cooled_nitrogen_concentrate", Item::new) - .lang("Cooled Nitrogen Concentrate") + GRAPHENE = CreateNuclear.REGISTRATE + .item("graphene", Item::new) .register(), - THORIUM_ROD = CreateNuclear.REGISTRATE - .item("thorium_rod", Item::new) - .onRegister(ItemRodTypesValue.setRodTypeInfos(new RodType.Builder() - .baseRodHeat(() -> CNConfigs.server().rods.baseValueThorium.get()) - .proximityRodHeat(() -> (float) CNConfigs.server().rods.thoriumProxyBonus.get()) - .rodTimer(() -> CNConfigs.server().rods.thoriumRodLifetime.get()) - .ratio(() -> CNConfigs.server().rods.thoriumHeatRatio.get()) - .fuelRodType())) - .tag(CNTags.forgeItemTag("rods"), CNItemTags.FUEL.tag) + ENRICHED_YELLOWCAKE = CreateNuclear.REGISTRATE + .item("enriched_yellowcake", Item::new) .register() ; - public static final ItemEntry ANTI_RADIATION_HELMETS = CreateNuclear.REGISTRATE - .item("default_anti_radiation_helmet", p -> new Helmet(p, DyeColor.BLACK)) - .tag( - CNTags.forgeItemTag("armors/helmets"), - CNItemTags.ANTI_RADIATION_ARMOR.tag - ) - .recipe((c, p) -> { - ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) - .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .define('X', CNTags.forgeItemTag("ingots/lead")) - .define('Y', CNTags.forgeItemTag("ingots/brass")) - .define('Z', CNBlocks.REINFORCED_GLASS.asItem()) - .pattern("YXY") - .pattern("XZX") - .showNotification(true) - .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName())); - - for (Cloths cloth : Cloths.values()) { - SmithingClothRecipeBuilder - .smithingCloth( - Ingredient.EMPTY, - Ingredient.of(c.get()), - Ingredient.of(cloth.getItem()), - RecipeCategory.COMBAT, - new ItemStack(c.get()) - ) - .unlocks("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .save(p, CreateNuclear.asResource("smithing/" + c.getName() + "_" + cloth.getColor().getSerializedName())); - } - }) - .lang("Anti Radiation Helmet") - .model(coloredArmorModel("helmet", "layer0", "particle")) - .register(); + public static final DyedItemsList ANTI_RADIATION_HELMETS = new DyedItemsList<>(color -> { + String colorName = color.getSerializedName(); - public static final ItemEntry ANTI_RADIATION_CHESTPLATES = CreateNuclear.REGISTRATE - .item("default_anti_radiation_chestplate", p -> new Chestplate(p, DyeColor.BLACK)) - .tag( - CNTags.forgeItemTag("armors/chestplates"), - CNTags.CNItemTags.ANTI_RADIATION_ARMOR.tag - ) - .recipe((c, p) -> { - ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) + return CreateNuclear.REGISTRATE.item(colorName + "_anti_radiation_helmet", p -> new Helmet(p, color)) + .tag( + CNTags.forgeItemTag("armors/helmets"), + getHelmetTag(colorName), + CNItemTags.ALL_ANTI_RADIATION_ARMORS.tag, + CNItemTags.ANTI_RADIATION_HELMET_FULL_DYE.tag + ) + .recipe((c, p) -> { + ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) + .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) + .define('X', CNTags.forgeItemTag("ingots/lead")) + .define('Y', ClothItem.Cloths.getByColor(color).get()) + .define('Z', CNBlocks.REINFORCED_GLASS.asItem()) + .pattern("YXY") + .pattern("XZX") + .showNotification(true) + .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName())); + }) + .lang(TextUtils.titleCaseConversion(color.getName()) + " Anti Radiation Helmet") + .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/armors/helmets/" + colorName + "_anti_radiation_helmet"))) + .register(); + }); + + public static final DyedItemsList ANTI_RADIATION_CHESTPLATES = new DyedItemsList<>(color -> { + String colorName = color.getSerializedName(); + + return CreateNuclear.REGISTRATE.item(colorName + "_anti_radiation_chestplate", p -> new Chestplate(p, color)) + .tag( + CNTags.forgeItemTag("armors/chestplates"), + getChestplateTag(colorName), + CNItemTags.ALL_ANTI_RADIATION_ARMORS.tag, + CNItemTags.ANTI_RADIATION_CHESTPLATE_FULL_DYE.tag + ) + .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) + .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) + .define('X', CNTags.forgeItemTag("ingots/lead")) + .define('Y', ClothItem.Cloths.getByColor(color).get()) + .define('Z', CNItems.GRAPHITE_ROD) + .pattern("Y Y") + .pattern("XXX") + .pattern("ZXZ") + .showNotification(true) + .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName()))) + .lang(TextUtils.titleCaseConversion(color.getName()) +" Anti Radiation Chestplate") + .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/armors/chestplates/" + colorName + "_anti_radiation_chestplate"))) + .register(); + + }); + + public static final DyedItemsList ANTI_RADIATION_LEGGINGS = new DyedItemsList<>(color -> { + String colorName = color.getSerializedName(); + + return CreateNuclear.REGISTRATE.item(colorName + "_anti_radiation_leggings", p -> new Leggings(p, color)) + .tag( + CNTags.forgeItemTag("armors/leggings"), + getLeggingsTag(colorName), + CNItemTags.ALL_ANTI_RADIATION_ARMORS.tag, + CNItemTags.ANTI_RADIATION_LEGGINGS_FULL_DYE.tag + ) + .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) + .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) + .define('X', CNTags.forgeItemTag("ingots/lead")) + .define('Y', ClothItem.Cloths.getByColor(color).get()) + .pattern("YXY") + .pattern("X X") + .pattern("Y Y") + .showNotification(true) + .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName()))) + .lang(TextUtils.titleCaseConversion(color.getName()) +" Anti Radiation Leggings") + .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/armors/leggings/" + colorName + "_anti_radiation_leggings"))) + .register(); + }); + + + public static final ItemEntry + ANTI_RADIATION_BOOTS = CreateNuclear.REGISTRATE.item("anti_radiation_boots", Boot::new) + .tag( + CNTags.forgeItemTag("armors/boots"), + CNItemTags.ANTI_RADIATION_BOOTS_DYE.tag, + CNItemTags.ANTI_RADIATION_ARMOR.tag, + CNItemTags.ALL_ANTI_RADIATION_ARMORS.tag + ) + .lang("Anti Radiation Boots") + .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) .define('X', CNTags.forgeItemTag("ingots/lead")) - .define('Y', CNTags.forgeItemTag("ingots/brass")) - .define('Z', CNItems.GRAPHITE_ROD) + .define('Y', ClothItem.Cloths.WHITE_CLOTH.getItem()) .pattern("Y Y") - .pattern("XXX") - .pattern("ZXZ") + .pattern("X X") .showNotification(true) - .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName())); - for (Cloths cloth : Cloths.values()) { - SmithingClothRecipeBuilder - .smithingCloth( - Ingredient.EMPTY, - Ingredient.of(c.get()), - Ingredient.of(cloth.getItem()), - RecipeCategory.COMBAT, - new ItemStack(c.get()) - ) - .unlocks("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .save(p, CreateNuclear.asResource("smithing/" + c.getName() + "_" + cloth.getColor().getSerializedName())); - } - }) - .lang("Anti Radiation Chestplate") - .model(coloredArmorModel("chestplate", "14")) - .register(); - - public static final ItemEntry ANTI_RADIATION_LEGGINGS = CreateNuclear.REGISTRATE - .item("default_anti_radiation_leggings", p -> new Leggings(p, DyeColor.BLACK)) - .tag( - CNTags.forgeItemTag("armors/leggings"), - CNTags.CNItemTags.ANTI_RADIATION_ARMOR.tag - ) - .recipe((c, p) -> { - ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) - .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .define('X', CNTags.forgeItemTag("ingots/lead")) - .define('Y', CNTags.forgeItemTag("ingots/brass")) - .pattern("YXY") - .pattern("X X") - .pattern("Y Y") - .showNotification(true) - .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName())); - - for (Cloths cloth : Cloths.values()) { - SmithingClothRecipeBuilder - .smithingCloth( - Ingredient.EMPTY, - Ingredient.of(c.get()), - Ingredient.of(cloth.getItem()), - RecipeCategory.COMBAT, - new ItemStack(c.get()) - ) - .unlocks("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .save(p, CreateNuclear.asResource("smithing/" + c.getName() + "_" + cloth.getColor().getSerializedName())); - } - }) - .lang("Anti Radiation Leggings") - .model(coloredArmorModel("leggings", "14")) - .register(); - - public static final ItemEntry ANTI_RADIATION_BOOTS = CreateNuclear.REGISTRATE - .item("default_anti_radiation_boots", p -> new Boot(p, DyeColor.BLACK)) - .tag( - CNTags.forgeItemTag("armors/boots"), - CNTags.CNItemTags.ANTI_RADIATION_ARMOR.tag - ) - .recipe((c, p) -> { - ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, c.get()) - .unlockedBy("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .define('X', CNTags.forgeItemTag("ingots/lead")) - .define('Y', CNTags.forgeItemTag("ingots/brass")) - .pattern("Y Y") - .pattern("X X") - .showNotification(true) - .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName())); - - for (Cloths cloth : Cloths.values()) { - SmithingClothRecipeBuilder - .smithingCloth( - Ingredient.EMPTY, - Ingredient.of(c.get()), - Ingredient.of(cloth.getItem()), - RecipeCategory.COMBAT, - new ItemStack(c.get()) - ) - .unlocks("has_cloth", RegistrateRecipeProvider.has(CNItemTags.CLOTH.tag)) - .save(p, CreateNuclear.asResource("smithing/" + c.getName() + "_" + cloth.getColor().getSerializedName())); - } - }) - .lang("Anti Radiation Boots") - .model(coloredArmorModel("boots", "14")) - .register(); + .save(p, CreateNuclear.asResource("crafting/items/armors/" + c.getName()))) + .model((c, p) -> p.generated(c, CreateNuclear.asResource("item/armors/anti_radiation_boots"))) + .register(); public static final DyedItemsList CLOTHS = new DyedItemsList<>(color -> { String colorName = color.getSerializedName(); @@ -364,12 +250,7 @@ public class CNItems { .tag(CNItemTags.CLOTH.tag) .recipe((c, p) -> ShapelessRecipeBuilder.shapeless(RecipeCategory.BUILDING_BLOCKS, c.get()) .unlockedBy("has_white_cloth", RegistrateRecipeProvider.has(ClothItem.Cloths.WHITE_CLOTH.getItem())) - // Accept any cloth EXCEPT one already of the target color, otherwise the - // recipe would let you "dye" a cloth into the color it already is. - .requires(Ingredient.of(Arrays.stream(DyeColor.values()) - .filter(other -> other != color) - .map(other -> ClothItem.Cloths.getByColor(other).get()) - .toArray(ClothItem[]::new))) + .requires(CNItemTags.CLOTH.tag) .requires(ingredients.get(color.ordinal())) .save(p, CreateNuclear.asResource("shapeless/cloth/" + c.getName())) ) @@ -378,9 +259,9 @@ public class CNItems { .register(); }); - public static final ItemEntry SPAWN_WOLF = CNBuilderTransformers.spawnEgg("wolf_irradiated_spawn_egg", CNEntityType.IRRADIATED_WOLF, 0x42452B, 0x4C422B, "Irradiated Wolf Spawn Egg"); - public static final ItemEntry SPAWN_CAT = CNBuilderTransformers.spawnEgg("cat_irradiated_spawn_egg", CNEntityType.IRRADIATED_CAT, 0x382C19, 0x742728, "Irradiated Cat Spawn Egg"); - public static final ItemEntry SPAWN_CHICKEN = CNBuilderTransformers.spawnEgg("chicken_irradiated_spawn_egg", CNEntityType.IRRADIATED_CHICKEN, 0x6B9455, 0x95393C, "Irradiated Chicken Spawn Egg"); + public static final ItemEntry SPAWN_WOLF = registerSpawnEgg("wolf_irradiated_spawn_egg", CNEntityType.IRRADIATED_WOLF, 0x42452B,0x4C422B, "Irradiated Wolf Spawn Egg"); + public static final ItemEntry SPAWN_CAT = registerSpawnEgg("cat_irradiated_spawn_egg", CNEntityType.IRRADIATED_CAT, 0x382C19, 0x742728, "Irradiated Cat Spawn Egg"); + public static final ItemEntry SPAWN_CHICKEN = registerSpawnEgg("chicken_irradiated_spawn_egg", CNEntityType.IRRADIATED_CHICKEN, 0x6B9455, 0x95393C, "Irradiated Chicken Spawn Egg"); public static final ItemEntry REACTOR_BLUEPRINT = CreateNuclear.REGISTRATE .item("reactor_blueprint_item", ReactorBluePrintItem::new) @@ -405,32 +286,15 @@ public class CNItems { .properties(p -> p.stacksTo(1)) .register(); - public static final ItemEntry REINFORCED_GLASS_BOTTLE = CreateNuclear.REGISTRATE - .item("reinforced_glass_bottle", Item::new) - .lang("Reinforced Glass Bottle") - .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.BREWING, c.get(), 3) - .unlockedBy("has_reinforced_glass", RegistrateRecipeProvider.has(CNBlocks.REINFORCED_GLASS.get())) - .define('G', CNBlocks.REINFORCED_GLASS) - .pattern("G G") - .pattern(" G ") - .save(p, CreateNuclear.asResource("crafting/" + c.getName()))) - .properties(p -> p.stacksTo(16)) - .register(); - public static final ItemEntry IRRADIATION_BIOME_EXTRACTOR = CreateNuclear.REGISTRATE - .item("biome_irradiation_extractor", BiomeIrradiationExtractorItem::new) - .lang("Biome Irradiation Extractor") - .recipe((c, p) -> ShapedRecipeBuilder.shaped(RecipeCategory.MISC, c.get(), 8) - .unlockedBy("has_reinforced_glass_bottle", RegistrateRecipeProvider.has(CNItems.REINFORCED_GLASS_BOTTLE.get())) - .define('B', CNItems.REINFORCED_GLASS_BOTTLE) - .define('S', Items.NETHER_STAR) - .pattern("BBB") - .pattern("BSB") - .pattern("BBB") - .save(p, CreateNuclear.asResource("crafting/" + c.getName()))) - .properties(p -> p.stacksTo(16).fireResistant().setNoRepair()) - .model(biomeRestoreModel()) - .register(); + private static ItemEntry registerSpawnEgg(String name, Supplier> entity, int backgroundColor, int highlightColor, String nameItems) { + return CreateNuclear.REGISTRATE + .item(name, p -> new ForgeSpawnEggItem(entity, backgroundColor, highlightColor, p)) + .lang(nameItems) + .model((c, p) -> p.withExistingParent(c.getName(), new ResourceLocation("item/template_spawn_egg"))) + .register(); + + } public static void register() {} } diff --git a/src/main/java/net/nuclearteam/createnuclear/CNMenus.java b/src/main/java/net/nuclearteam/createnuclear/CNMenus.java index ff5856585..29d2993ad 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNMenus.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNMenus.java @@ -9,12 +9,12 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItemScreen; import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintMenu; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInputMenu; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInputScreen; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInputMenu; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInputScreen; public class CNMenus { public static final MenuEntry REACTOR_BLUEPRINT_MENU = menu("reactor_blueprint_menu", ReactorBluePrintMenu::new, () -> ReactorBluePrintItemScreen::new); - public static final MenuEntry SLOT_ITEM_STORAGE = menu("slot_item_menu", ReactorRodInputMenu::new, () -> ReactorRodInputScreen::new); + public static final MenuEntry SLOT_ITEM_STORAGE = menu("slot_item_menu", ReactorInputMenu::new, () -> ReactorInputScreen::new); private static > MenuEntry menu(String name, ForgeMenuFactory factory, NonNullSupplier> screenFactory) { return CreateNuclear.REGISTRATE diff --git a/src/main/java/net/nuclearteam/createnuclear/CNOpenPipeEffectHandlers.java b/src/main/java/net/nuclearteam/createnuclear/CNOpenPipeEffectHandlers.java deleted file mode 100644 index 225109af3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNOpenPipeEffectHandlers.java +++ /dev/null @@ -1,10 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.simibubi.create.api.effect.OpenPipeEffectHandler; -import net.nuclearteam.createnuclear.content.radiation.RadiationEffectHandler; - -public class CNOpenPipeEffectHandlers { - public static void registerDefaults() { - OpenPipeEffectHandler.REGISTRY.register(CNFluids.URANIUM.getSource(), new RadiationEffectHandler()); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNPackets.java b/src/main/java/net/nuclearteam/createnuclear/CNPackets.java index 4f9ecb0e9..2befcc463 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNPackets.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNPackets.java @@ -15,6 +15,7 @@ import net.minecraftforge.network.simple.SimpleChannel; import net.minecraftforge.network.NetworkEvent.Context; import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItemPacket; +import net.nuclearteam.createnuclear.content.multiblock.controller.EventTriggerPacket; import java.util.function.BiConsumer; import java.util.function.Function; @@ -22,6 +23,9 @@ public enum CNPackets { CONFIGURE_REACTOR_PATTERN(ReactorBluePrintItemPacket.class, ReactorBluePrintItemPacket::new, PLAY_TO_SERVER), + + // To client + TRIGGER_EVENT_TEXT_OVERLAY(EventTriggerPacket.class, EventTriggerPacket::new, PLAY_TO_CLIENT), ; public static final ResourceLocation CHANNEL_NAME = CreateNuclear.asResource("main"); public static final int NETWORK_VERSION = 0; diff --git a/src/main/java/net/nuclearteam/createnuclear/CNParticleRegistry.java b/src/main/java/net/nuclearteam/createnuclear/CNParticleRegistry.java deleted file mode 100644 index d46cb45a7..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNParticleRegistry.java +++ /dev/null @@ -1,42 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.mojang.serialization.Codec; -import net.minecraft.core.particles.BlockParticleOption; -import net.minecraft.core.particles.ItemParticleOption; -import net.minecraft.core.particles.ParticleType; -import net.minecraft.core.particles.SimpleParticleType; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegistryObject; - -public class CNParticleRegistry { - public static final DeferredRegister> DEF_REG; - - public static final RegistryObject NUCLEAR_MUSHROOM_CLOUD; - public static final RegistryObject NUCLEAR_MUSHROOM_CLOUD_SMOKE; - public static final RegistryObject NUCLEAR_MUSHROOM_CLOUD_EXPLOSION; - - private static ParticleType createBlockParticleType() { - return new ParticleType(false, BlockParticleOption.DESERIALIZER) { - public Codec codec() { - return BlockParticleOption.codec(this); - } - }; - } - - private static ParticleType createItemParticleType() { - return new ParticleType(false, ItemParticleOption.DESERIALIZER) { - public Codec codec() { - return ItemParticleOption.codec(this); - } - }; - } - - static { - DEF_REG = DeferredRegister.create(ForgeRegistries.PARTICLE_TYPES, "createnuclear"); - NUCLEAR_MUSHROOM_CLOUD = DEF_REG.register("nuclear_mushroom_cloud", () -> new SimpleParticleType(false)); - NUCLEAR_MUSHROOM_CLOUD_SMOKE = DEF_REG.register("nuclear_mushroom_cloud_smoke", () -> new SimpleParticleType(false)); - NUCLEAR_MUSHROOM_CLOUD_EXPLOSION = DEF_REG.register("nuclear_mushroom_cloud_explosion", () -> new SimpleParticleType(false)); - } - -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNParticleTypes.java b/src/main/java/net/nuclearteam/createnuclear/CNParticleTypes.java deleted file mode 100644 index 6a6be8603..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNParticleTypes.java +++ /dev/null @@ -1,69 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.simibubi.create.foundation.particle.ICustomParticleData; -import net.createmod.catnip.lang.Lang; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.client.event.RegisterParticleProvidersEvent; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegistryObject; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraft.core.particles.ParticleOptions; -import net.minecraft.core.particles.ParticleType; -import net.nuclearteam.createnuclear.content.particles.IrradiatedParticlesData; - -import java.util.function.Supplier; - -public enum CNParticleTypes { - - IRRADIATED_PARTICLES(IrradiatedParticlesData::new), - ; - - private final ParticleEntry entry; - - CNParticleTypes(Supplier> typeFactory) { - String name = Lang.asId(name()); - entry = new ParticleEntry<>(name, typeFactory); - } - - public static void register(IEventBus modEventBus) { - ParticleEntry.REGISTER.register(modEventBus); - } - - @OnlyIn(Dist.CLIENT) - public static void registerFactories(RegisterParticleProvidersEvent event) { - for (CNParticleTypes particle : values()) - particle.entry.registerFactory(event); - } - - public ParticleType get() { - return entry.object.get(); - } - - public String parameter() { - return entry.name; - } - - - private static class ParticleEntry { - private static final DeferredRegister> REGISTER = DeferredRegister.create(ForgeRegistries.PARTICLE_TYPES, CreateNuclear.MOD_ID); - - private final String name; - private final Supplier> typeFactory; - private final RegistryObject> object; - - public ParticleEntry(String name, Supplier> typeFactory) { - this.name = name; - this.typeFactory = typeFactory; - - object = REGISTER.register(name, () -> this.typeFactory.get().createType()); - } - - @OnlyIn(Dist.CLIENT) - public void registerFactory(RegisterParticleProvidersEvent event) { - typeFactory.get() - .register(object.get(), event); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNPotions.java b/src/main/java/net/nuclearteam/createnuclear/CNPotions.java index 5b5f70913..6d72ab695 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNPotions.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNPotions.java @@ -22,13 +22,6 @@ public class CNPotions { public static final RegistryObject POTION_2 = CN_POTIONS.register("potion_of_radiation_2", () -> new Potion(new MobEffectInstance(CNEffects.RADIATION.get(), 410, 1))); - public static final RegistryObject POTION_1_IODINE = CN_POTIONS.register("potion_of_iodine", - () -> new Potion(new MobEffectInstance(CNEffects.IODINE.get(), 900)) - ); - public static final RegistryObject POTION_AUGMENT_1_IODINE = CN_POTIONS.register("potion_of_iodine_augment", - () -> new Potion(new MobEffectInstance(CNEffects.IODINE.get(), 1800)) - ); - public static void register(IEventBus eventBus) { CN_POTIONS.register(eventBus); } @@ -37,8 +30,5 @@ public static void registerPotionsRecipes() { PotionBrewing.addMix(Potions.AWKWARD, CNItems.ENRICHED_YELLOWCAKE.get(), POTION_1.get()); PotionBrewing.addMix(POTION_1.get(), Items.REDSTONE, POTION_AUGMENT_1.get()); PotionBrewing.addMix(POTION_1.get(), Items.GLOWSTONE_DUST, POTION_2.get()); - - PotionBrewing.addMix(Potions.AWKWARD, Items.DRIED_KELP, POTION_1_IODINE.get()); - PotionBrewing.addMix(POTION_1_IODINE.get(), Items.REDSTONE, POTION_AUGMENT_1_IODINE.get()); } } diff --git a/src/main/java/net/nuclearteam/createnuclear/CNRecipeTypes.java b/src/main/java/net/nuclearteam/createnuclear/CNRecipeTypes.java index d84ebd2de..546632b5d 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNRecipeTypes.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNRecipeTypes.java @@ -17,18 +17,21 @@ import net.minecraftforge.registries.RegistryObject; import net.nuclearteam.createnuclear.content.kinetics.fan.processing.EnrichedRecipe; import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.kinetics.fan.processing.SnowPowderRecipe; import org.jetbrains.annotations.Nullable; import java.util.Optional; +import java.util.function.Predicate; import java.util.function.Supplier; @SuppressWarnings({"unused", "unchecked"}) public enum CNRecipeTypes implements IRecipeTypeInfo { - ENRICHED(EnrichedRecipe::new), - SNOW_POWDER(SnowPowderRecipe::new) + ENRICHED(EnrichedRecipe::new) ; + public static final Predicate> CAN_BE_AUTOMATED = r -> !r.getId() + .getPath() + .endsWith("_manual_only"); + private final ResourceLocation id; private final RegistryObject> serializerObject; private final Supplier> type; diff --git a/src/main/java/net/nuclearteam/createnuclear/CNShapes.java b/src/main/java/net/nuclearteam/createnuclear/CNShapes.java index 602dfc49f..b32f6d2f9 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNShapes.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNShapes.java @@ -16,8 +16,7 @@ public class CNShapes { // Independent Shapers public static final VoxelShaper REACTOR_OUTPUT = shape(0, 0, 0, 16, 14, 16).forDirectional(), - REACTOR_ROD_INPUT = shape(0,0,0,16,16,16).forDirectional(), - REACTOR_FLUID_INPUT = shape(0,0,0,16,16,16).forDirectional() + REACTOR_INPUT = shape(0,0,0,16,16,16).forDirectional() ; private static Builder shape(VoxelShape shape) { diff --git a/src/main/java/net/nuclearteam/createnuclear/CNSoundEvents.java b/src/main/java/net/nuclearteam/createnuclear/CNSoundEvents.java deleted file mode 100644 index 7b5fa807c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/CNSoundEvents.java +++ /dev/null @@ -1,418 +0,0 @@ -package net.nuclearteam.createnuclear; - -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.simibubi.create.AllSoundEvents.ConfiguredSoundEvent; -import com.simibubi.create.AllSoundEvents.SoundEntry; -import com.simibubi.create.Create; -import net.minecraft.core.Holder; -import net.minecraft.core.registries.Registries; -import net.minecraft.data.CachedOutput; -import net.minecraft.data.DataGenerator; -import net.minecraft.data.DataProvider; -import net.minecraft.data.PackOutput; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundEvents; -import net.minecraft.sounds.SoundSource; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegisterEvent; -import net.minecraftforge.registries.RegistryObject; - -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.CompletableFuture; -import java.util.function.BiConsumer; -import java.util.function.Supplier; - -public class CNSoundEvents { - - public static final Map ALL = new HashMap<>(); - - public static final SoundEntry - - REACTOR_ACTIVATION = create("reacteur/activation") - .subtitle("Reactor Activation") - .category(SoundSource.BLOCKS) - .build(), - - REACTOR_RUNNING = create("reacteur/running") - .subtitle("Reactor Running") - .category(SoundSource.BLOCKS) - .build(), - - REACTOR_SHUT_OFF = create("reacteur/shut_off") - .subtitle("Reactor Shut Off") - .category(SoundSource.BLOCKS) - .build(), - - REACTOR_ALARM_ONESHOT = create("alarm/reactor", "alarm") - .subtitle("Reactor Alarm") - .category(SoundSource.BLOCKS) - .build(), - - REACTOR_ALARM_LOOP = create("alarm/alarm") - .subtitle("Reactor Alarm Loop") - .category(SoundSource.BLOCKS) - .build(), - - NUCLEAR_EXPLOSION = create("explosion/nuclear_explosion") - .subtitle("Nuclear Explosion") - .category(SoundSource.AMBIENT) - .build(), - - NUCLEAR_EXPLOSION_LARGE = create("explosion/large_nuclear_explosion") - .subtitle("Large Nuclear Explosion") - .category(SoundSource.AMBIENT) - .build(), - - NUCLEAR_EXPLOSION_RINGING = create("explosion/ringing") - .subtitle("Nuclear Explosion Ringing") - .category(SoundSource.AMBIENT) - .build(), - - NUCLEAR_EXPLOSION_RUMBLE = create("explosion/nuclear_explosion_rumble") - .subtitle("Nuclear Explosion Rumble") - .category(SoundSource.AMBIENT) - .build(), - - MOTOR_ASSEMBLE = create("reacteur/assemble_deassemble/motor_assemble") - .subtitle("Motor Assemble") - .category(SoundSource.BLOCKS) - .build(), - - MOTOR_DISASSEMBLE = create("reacteur/assemble_deassemble/motor_disassemble") - .subtitle("Motor Disassemble") - .category(SoundSource.BLOCKS) - .build(), - - NUCLEAR_EXPLOSION_RUMBLE_2 = create("explosion/rumble") - .subtitle("Nuclear Explosion Rumble") - .category(SoundSource.AMBIENT) - .build(), - - NUCLEAR_EXPLOSION_MAIN = create("explosion/main") - .subtitle("Nuclear Explosion Main") - .category(SoundSource.AMBIENT) - .build(), - - NUCLEAR_EXPLOSION_SHOCKWAVE = create("explosion/shockwave") - .subtitle("Nuclear Explosion Shockwave") - .category(SoundSource.AMBIENT) - .build(), - - GEIGER_HIGH = create("geiger/high") - .subtitle("Geiger High") - .category(SoundSource.AMBIENT) - .build(), - - GEIGER_LOW = create("geiger/low") - .subtitle("Geiger Low") - .category(SoundSource.AMBIENT) - .build(), - - GEIGER_MEDIUM = create("geiger/medium") - .subtitle("Geiger Medium") - .category(SoundSource.AMBIENT) - .build(), - - BIOME_WASTELAND = create("biomes/wasteland") - .subtitle("Wasteland") - .category(SoundSource.AMBIENT) - .build() - ; - - private static SoundEntryBuilder create(String... pathParts) { - String name = String.join("_", pathParts); - return create(CreateNuclear.asResource(name)); - } - - private static SoundEntryBuilder create(ResourceLocation id) { - return new SoundEntryBuilder(id); - } - - public static void prepare() { - for (SoundEntry entry : ALL.values()) entry.prepare(); - } - - public static void register(RegisterEvent event) { - event.register(Registries.SOUND_EVENT, helper -> { - for (SoundEntry entry : ALL.values()) entry.register(helper); - }); - } - - public static void provideLang(BiConsumer consumer) { - for (SoundEntry entry : ALL.values()) - if (entry.hasSubtitle()) - consumer.accept(entry.getSubtitleKey(), entry.getSubtitle()); - } - - public static SoundEntryProvider provider(DataGenerator generator) { - return new SoundEntryProvider(generator); - } - - public static void playItemPickup(Player player) { - player.level() - .playSound(null, player.blockPosition(), SoundEvents.ITEM_PICKUP, SoundSource.PLAYERS, .2f, - 1f + player.level().random.nextFloat()); - } - - public static class SoundEntryProvider implements DataProvider { - - private PackOutput output; - - public SoundEntryProvider(DataGenerator generator) { - output = generator.getPackOutput(); - } - - @Override - public CompletableFuture run(CachedOutput cache) { - return generate(output.getOutputFolder(), cache); - } - - @Override - public String getName() { - return "CreateNuclear's Custom Sounds"; - } - - public CompletableFuture generate(Path path, CachedOutput cache) { - path = path.resolve("assets/createnuclear"); - JsonObject json = new JsonObject(); - ALL.entrySet() - .stream() - .sorted(Map.Entry.comparingByKey()) - .forEach(entry -> { - entry.getValue() - .write(json); - }); - return DataProvider.saveStable(cache, json, path.resolve("sounds.json")); - } - - } - - public static class SoundEntryBuilder { - - protected ResourceLocation id; - protected String subtitle = "unregistered"; - protected SoundSource category = SoundSource.BLOCKS; - protected List wrappedEvents; - protected List variants; - protected int attenuationDistance; - - public SoundEntryBuilder(ResourceLocation id) { - wrappedEvents = new ArrayList<>(); - variants = new ArrayList<>(); - this.id = id; - } - - public SoundEntryBuilder subtitle(String subtitle) { - this.subtitle = subtitle; - return this; - } - - public SoundEntryBuilder attenuationDistance(int distance) { - this.attenuationDistance = distance; - return this; - } - - public SoundEntryBuilder noSubtitle() { - this.subtitle = null; - return this; - } - - public SoundEntryBuilder category(SoundSource category) { - this.category = category; - return this; - } - - public SoundEntryBuilder addVariant(String name) { - return addVariant(Create.asResource(name)); - } - - public SoundEntryBuilder addVariant(ResourceLocation id) { - variants.add(id); - return this; - } - - public SoundEntryBuilder playExisting(Supplier event, float volume, float pitch) { - wrappedEvents.add(new ConfiguredSoundEvent(event, volume, pitch)); - return this; - } - - public SoundEntryBuilder playExisting(SoundEvent event, float volume, float pitch) { - return playExisting(() -> event, volume, pitch); - } - - public SoundEntryBuilder playExisting(SoundEvent event) { - return playExisting(event, 1, 1); - } - - public SoundEntryBuilder playExisting(Holder event) { - return playExisting(event::get, 1, 1); - } - - public SoundEntry build() { - SoundEntry entry = - wrappedEvents.isEmpty() ? new CustomSoundEntry(id, variants, subtitle, category, attenuationDistance) - : new WrappedSoundEntry(id, subtitle, wrappedEvents, category, attenuationDistance); - ALL.put(entry.getId(), entry); - return entry; - } - - } - - private static class CustomSoundEntry extends SoundEntry { - - protected List variants; - protected RegistryObject event; - - public CustomSoundEntry(ResourceLocation id, List variants, String subtitle, - SoundSource category, int attenuationDistance) { - super(id, subtitle, category, attenuationDistance); - this.variants = variants; - } - - @Override - public void prepare() { - event = RegistryObject.create(id, ForgeRegistries.SOUND_EVENTS); - } - - @Override - public void register(RegisterEvent.RegisterHelper helper) { - ResourceLocation location = event.getId(); - helper.register(location, SoundEvent.createVariableRangeEvent(location)); - } - - @Override - public SoundEvent getMainEvent() { - return event.get(); - } - - @Override - public void write(JsonObject json) { - JsonObject entry = new JsonObject(); - JsonArray list = new JsonArray(); - - JsonObject s = new JsonObject(); - s.addProperty("name", id.toString()); - s.addProperty("type", "file"); - if (attenuationDistance != 0) - s.addProperty("attenuation_distance", attenuationDistance); - list.add(s); - - for (ResourceLocation variant : variants) { - s = new JsonObject(); - s.addProperty("name", variant.toString()); - s.addProperty("type", "file"); - if (attenuationDistance != 0) - s.addProperty("attenuation_distance", attenuationDistance); - list.add(s); - } - - entry.add("sounds", list); - if (hasSubtitle()) - entry.addProperty("subtitle", getSubtitleKey()); - json.add(id.getPath(), entry); - } - - @Override - public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) { - world.playSound(entity, x, y, z, event.get(), category, volume, pitch); - } - - @Override - public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) { - world.playLocalSound(x, y, z, event.get(), category, volume, pitch, fade); - } - - } - - private static class WrappedSoundEntry extends SoundEntry { - - private List wrappedEvents; - private List compiledEvents; - - public WrappedSoundEntry(ResourceLocation id, String subtitle, - List wrappedEvents, SoundSource category, int attenuationDistance) { - super(id, subtitle, category, attenuationDistance); - this.wrappedEvents = wrappedEvents; - compiledEvents = new ArrayList<>(); - } - - @Override - public void prepare() { - for (int i = 0; i < wrappedEvents.size(); i++) { - ConfiguredSoundEvent wrapped = wrappedEvents.get(i); - ResourceLocation location = getIdOf(i); - RegistryObject event = RegistryObject.create(location, ForgeRegistries.SOUND_EVENTS); - compiledEvents.add(new WrappedSoundEntry.CompiledSoundEvent(event, wrapped.volume(), wrapped.pitch())); - } - } - - @Override - public void register(RegisterEvent.RegisterHelper helper) { - for (WrappedSoundEntry.CompiledSoundEvent compiledEvent : compiledEvents) { - ResourceLocation location = compiledEvent.event().getId(); - helper.register(location, SoundEvent.createVariableRangeEvent(location)); - } - } - - @Override - public SoundEvent getMainEvent() { - return compiledEvents.get(0) - .event().get(); - } - - protected ResourceLocation getIdOf(int i) { - return new ResourceLocation(id.getNamespace(), i == 0 ? id.getPath() : id.getPath() + "_compounded_" + i); - } - - @Override - public void write(JsonObject json) { - for (int i = 0; i < wrappedEvents.size(); i++) { - ConfiguredSoundEvent event = wrappedEvents.get(i); - JsonObject entry = new JsonObject(); - JsonArray list = new JsonArray(); - JsonObject s = new JsonObject(); - s.addProperty("name", event.event() - .get() - .getLocation() - .toString()); - s.addProperty("type", "event"); - if (attenuationDistance != 0) - s.addProperty("attenuation_distance", attenuationDistance); - list.add(s); - entry.add("sounds", list); - if (i == 0 && hasSubtitle()) - entry.addProperty("subtitle", getSubtitleKey()); - json.add(getIdOf(i).getPath(), entry); - } - } - - @Override - public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) { - for (WrappedSoundEntry.CompiledSoundEvent event : compiledEvents) { - world.playSound(entity, x, y, z, event.event().get(), category, event.volume() * volume, - event.pitch() * pitch); - } - } - - @Override - public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) { - for (WrappedSoundEntry.CompiledSoundEvent event : compiledEvents) { - world.playLocalSound(x, y, z, event.event().get(), category, event.volume() * volume, - event.pitch() * pitch, fade); - } - } - - private record CompiledSoundEvent(RegistryObject event, float volume, float pitch) { - } - - } - -} diff --git a/src/main/java/net/nuclearteam/createnuclear/CNTags.java b/src/main/java/net/nuclearteam/createnuclear/CNTags.java index fd28b0c48..e3340ddf0 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CNTags.java +++ b/src/main/java/net/nuclearteam/createnuclear/CNTags.java @@ -70,9 +70,10 @@ public enum NameSpace { public enum CNBlockTags { FAN_PROCESSING_CATALYSTS_ENRICHED(MOD, "fan_processing_catalysts/enriched"), - FAN_PROCESSING_CATALYSTS_SNOW_POWDER(MOD, "fan_processing_catalysts/snow_powder"), ENRICHING_FIRE_BASE_BLOCKS, ALL_CAMPFIRES(MINECRAFT, "all/campfires"), + URANIUM_ORES, + LEAD_ORES ; public final TagKey tag; @@ -123,9 +124,17 @@ public enum CNItemTags { CLOTH, FUEL, COOLER, + URANIUM_ORES, + LEAD_ORES, + ANTI_RADIATION_HELMET_DYE, + ANTI_RADIATION_CHESTPLATE_DYE, + ANTI_RADIATION_LEGGINGS_DYE, + ANTI_RADIATION_BOOTS_DYE, ANTI_RADIATION_ARMOR, - COMPOSTABLE(FORGE), - ALL_ANTI_RADIATION_ARMORS + ALL_ANTI_RADIATION_ARMORS, + ANTI_RADIATION_HELMET_FULL_DYE, + ANTI_RADIATION_CHESTPLATE_FULL_DYE, + ANTI_RADIATION_LEGGINGS_FULL_DYE, ; public final TagKey tag; @@ -169,10 +178,7 @@ private static void init() {} } public enum CNFluidTags { - URANIUM, - THORIUM, - NITROGEN - + URANIUM ; public final TagKey tag; diff --git a/src/main/java/net/nuclearteam/createnuclear/CreateNuclear.java b/src/main/java/net/nuclearteam/createnuclear/CreateNuclear.java index db73cafd6..938e3b477 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CreateNuclear.java +++ b/src/main/java/net/nuclearteam/createnuclear/CreateNuclear.java @@ -1,8 +1,8 @@ package net.nuclearteam.createnuclear; + import com.mojang.logging.LogUtils; import com.simibubi.create.CreateBuildInfo; -import com.simibubi.create.content.equipment.goggles.GogglesItem; import com.simibubi.create.foundation.data.CreateRegistrate; import com.simibubi.create.foundation.item.ItemDescription; import com.simibubi.create.foundation.item.KineticStats; @@ -10,7 +10,6 @@ import net.createmod.catnip.lang.FontHelper; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.EntityType; import net.minecraft.world.item.CreativeModeTab; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.common.MinecraftForge; @@ -22,30 +21,22 @@ import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.RegisterEvent; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.IrradiatedAnimal; import net.nuclearteam.createnuclear.content.decoration.palettes.CNPaletteBlocks; -import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem.IGoggleHelmet; import net.nuclearteam.createnuclear.content.kinetics.fan.processing.CNFanProcessingTypes; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.advancement.CNTriggers; -import net.nuclearteam.createnuclear.foundation.item.RodsStats; -import net.nuclearteam.createnuclear.content.radiation.CNRadiationValues; import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; import net.nuclearteam.createnuclear.infrastructure.data.CreateNuclearDatagen; -import net.nuclearteam.createnuclear.infrastructure.worldgen.CNPlacementModifiers; import org.slf4j.Logger; @Mod(CreateNuclear.MOD_ID) public class CreateNuclear { public static final String MOD_ID = "createnuclear"; public static final Logger LOGGER = LogUtils.getLogger(); - public static final CreateRegistrate REGISTRATE = CreateRegistrate.create(MOD_ID) - .defaultCreativeTab((ResourceKey) null); + .defaultCreativeTab((ResourceKey) null); static { REGISTRATE.setTooltipModifierFactory(item -> new ItemDescription.Modifier(item, FontHelper.Palette.STANDARD_CREATE) - .andThen(TooltipModifier.mapNull(KineticStats.create(item))).andThen(RodsStats.create(item))); + .andThen(TooltipModifier.mapNull(KineticStats.create(item)))); } public CreateNuclear() { @@ -63,8 +54,7 @@ public static void onInitialize() { REGISTRATE.registerEventListeners(modEventBus); - CNSoundEvents.prepare(); - CNDisplaySources.register(); + CNTags.init(); CNBlocks.register(); CNBlockEntityTypes.register(); @@ -77,44 +67,33 @@ public static void onInitialize() { CNConfigs.register(modLoadingContext); - CNPlacementModifiers.register(modEventBus); CNCreativeModeTabs.register(modEventBus); CNEffects.register(modEventBus); CNPotions.register(modEventBus); - CNParticleTypes.register(modEventBus); - CNParticleRegistry.DEF_REG.register(modEventBus); CNRecipeTypes.register(modEventBus); - CNAttributes.register(modEventBus); - - GogglesItem.addIsWearingPredicate(IGoggleHelmet::isGoggleHelmet); modEventBus.addListener(CreateNuclear::init); modEventBus.addListener(CreateNuclear::onRegister); modEventBus.addListener(EventPriority.LOWEST, CreateNuclearDatagen::gatherData); - modEventBus.addListener(CNSoundEvents::register); forgeEventBus.addListener(CNFluids::handleFluidEffect); + DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> CreateNuclearClient.onCtorClient(modEventBus, forgeEventBus)); } public static void init(final FMLCommonSetupEvent event) { CNFluids.registerFluidInteractions(); - event.enqueueWork(() -> IrradiatedAnimal.VANILLA_TO_IRRADIATED.put(EntityType.CHICKEN, CNEntityType.IRRADIATED_CHICKEN.get())); - event.enqueueWork(() -> { - CNPotions.registerPotionsRecipes(); - CNOpenPipeEffectHandlers.registerDefaults(); - CNRadiationValues.register(); - }); - - CNAdvancement.register(); - CNTriggers.register(); + event.enqueueWork(CNPotions::registerPotionsRecipes); } public static void onRegister(final RegisterEvent event) { CNFanProcessingTypes.register(); + } + public static ResourceLocation asResource(String path) { return new ResourceLocation(MOD_ID, path); } + } diff --git a/src/main/java/net/nuclearteam/createnuclear/CreateNuclearClient.java b/src/main/java/net/nuclearteam/createnuclear/CreateNuclearClient.java index bc9973d79..fbf158233 100644 --- a/src/main/java/net/nuclearteam/createnuclear/CreateNuclearClient.java +++ b/src/main/java/net/nuclearteam/createnuclear/CreateNuclearClient.java @@ -1,83 +1,20 @@ package net.nuclearteam.createnuclear; import net.createmod.ponder.foundation.PonderIndex; -import net.minecraft.client.renderer.item.ClampedItemPropertyFunction; -import net.minecraft.client.renderer.item.ItemProperties; -import net.minecraft.client.renderer.item.ItemPropertyFunction; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.DyeColor; -import net.minecraft.world.item.Item; -import net.minecraftforge.client.event.RegisterParticleProvidersEvent; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import net.nuclearteam.createnuclear.content.particles.NuclearMushroomCloudParticle; -import net.nuclearteam.createnuclear.content.particles.SmallNuclearExplosionParticle; -import net.nuclearteam.createnuclear.content.biome.BiomeIrradiationExtractorItem; import net.nuclearteam.createnuclear.foundation.ponder.CreateNuclearPonderPlugin; -import net.nuclearteam.createnuclear.foundation.utility.ClothTagHelper; @SuppressWarnings("unused") public class CreateNuclearClient { public static void onCtorClient(IEventBus modEventBus, IEventBus forgeEventBus) { modEventBus.addListener(CreateNuclearClient::clientInit); - modEventBus.addListener(CreateNuclearClient::setupParticles); - modEventBus.addListener(CNParticleTypes::registerFactories); + } public static void clientInit(final FMLClientSetupEvent event) { PonderIndex.addPlugin(new CreateNuclearPonderPlugin()); - event.enqueueWork(CreateNuclearClient::registerItemProperties); - } - - - private static void registerItemProperties() { - clothItemProperties(); - biomeRestoreItemProperties(); - } - - /** - * Registers the {@code createnuclear:cloth_color} item property used by the anti-radiation - * armor item models to pick the right colored icon based on the {@code ClothColor} NBT tag. - *

- * {@link ItemProperties#register(Item, ResourceLocation, ItemPropertyFunction)} clamps the value to {@code [0,1]}, so the dyed color id is - * normalized to {@code (id+1)/16} (range {@code 0.0625..1.0}) and undyed maps to {@code 0} — - * below the smallest override threshold, so no override fires and the default icon shows. - * The model overrides in {@code CNItems.coloredArmorModel} use the matching {@code (id+1)/16} - * predicate values. Mirrors the dyed worn-armor texture selected by - * {@code AntiRadiationArmorItem.getArmorTexture}. - */ - private static void clothItemProperties() { - ResourceLocation clothColor = CreateNuclear.asResource("cloth_color"); - ClampedItemPropertyFunction fn = (stack, level, entity, seed) -> { - DyeColor dye = DyeColor.byName(ClothTagHelper.getClothColor(stack, "default"), null); - return dye == null ? 0f : (dye.getId() + 1) / 16f; - }; - ItemProperties.register(CNItems.ANTI_RADIATION_HELMETS.get(), clothColor, fn); - ItemProperties.register(CNItems.ANTI_RADIATION_CHESTPLATES.get(), clothColor, fn); - ItemProperties.register(CNItems.ANTI_RADIATION_LEGGINGS.get(), clothColor, fn); - ItemProperties.register(CNItems.ANTI_RADIATION_BOOTS.get(), clothColor, fn); - } - - /** - * Registers the {@code createnuclear:charge} item property used by the biome restore cell's - * model to pick a texture variant based on its current charge ratio (0.0 = empty, 1.0 = full). - */ - private static void biomeRestoreItemProperties() { - ResourceLocation biomeRestore = CreateNuclear.asResource(BiomeIrradiationExtractorItem.TAG); - ClampedItemPropertyFunction fn = ((stack, level, entity, seed) -> { - int max = BiomeIrradiationExtractorItem.getMaxCharge(); - - return (float) BiomeIrradiationExtractorItem.getChargeTag(stack, 0) / max; - }); - - ItemProperties.register(CNItems.IRRADIATION_BIOME_EXTRACTOR.get(), biomeRestore, fn); - } - public static void setupParticles(RegisterParticleProvidersEvent registry) { - CreateNuclear.LOGGER.debug("Registered particle factories"); - registry.registerSpecial(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD.get(), new NuclearMushroomCloudParticle.Factory()); - registry.registerSpriteSet(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD_SMOKE.get(), SmallNuclearExplosionParticle.NukeFactory::new); - registry.registerSpriteSet(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD_EXPLOSION.get(), SmallNuclearExplosionParticle.NukeFactory::new); } } diff --git a/src/main/java/net/nuclearteam/createnuclear/api/CreateNuclearRegistries.java b/src/main/java/net/nuclearteam/createnuclear/api/CreateNuclearRegistries.java deleted file mode 100644 index c720e43d3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/CreateNuclearRegistries.java +++ /dev/null @@ -1,22 +0,0 @@ -package net.nuclearteam.createnuclear.api; - -import net.minecraft.core.Registry; -import net.minecraft.resources.ResourceKey; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; - - -public class CreateNuclearRegistries { - public static final ResourceKey> ROD_TYPE = key("rods/type"); - public static final ResourceKey> FLUID_TYPE = key("fluids/type"); - - public static final ResourceKey FALLBACK_ROD = ResourceKey.create(CreateNuclearRegistries.ROD_TYPE, CreateNuclear.asResource("fallback")); - public static final ResourceKey FALLBACK_FLUID = ResourceKey.create(CreateNuclearRegistries.FLUID_TYPE, CreateNuclear.asResource("fallback")); - - - - private static ResourceKey> key(String name) { - return ResourceKey.createRegistryKey(CreateNuclear.asResource(name)); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/ItemRodTypesValue.java b/src/main/java/net/nuclearteam/createnuclear/api/ItemRodTypesValue.java deleted file mode 100644 index cdf011092..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/ItemRodTypesValue.java +++ /dev/null @@ -1,74 +0,0 @@ -package net.nuclearteam.createnuclear.api; - -import com.simibubi.create.api.registry.SimpleRegistry; -import com.tterrag.registrate.util.nullness.NonNullConsumer; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.Items; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import static net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRod.NONE; - -public class ItemRodTypesValue { - public static final SimpleRegistry ROD_TYPE = SimpleRegistry.create(); - /** - * Default RodType returned when no mapping exists in the registry. - * Built once to avoid allocating a new instance on each lookup. - */ - public static final RodType DEFAULT_ROD_TYPE = new RodType(Items.AIR.builtInRegistryHolder(), -1, -1, -1, NONE); - - /** - * Get the {@link RodType} associated with the given {@link Item}. - * If no mapping exists, a default empty {@link RodType} is returned. - * - * @param item the item to look up (must not be null) - * @return the associated {@link RodType} or a default instance if none present - * @throws NullPointerException if {@code item} is null - */ - public static RodType getRodType(Item item) { - RodType type = ROD_TYPE.get(item); - return type == null ? DEFAULT_ROD_TYPE : type; - } - - /** - * Create a consumer that registers the given {@link RodType} for an item. - * - * @param type the rod type to register (must not be null) - * @return a non-null consumer that registers the mapping - * @throws NullPointerException if {@code type} is null - */ - public static NonNullConsumer setRodTypeInfos(RodType.Builder type) { - return item -> ROD_TYPE.register(item, type.item(item).build()); - } - - /** - * Create a consumer that builds a {@link RodType} using the provided numeric - * parameters and registers it for the item passed to the consumer. - * - * The {@code type} parameter controls whether the builder configures the - * rod as a cooler, fuel or keeps the default mixed behaviour. For MIXTE - * we keep the builder default and do not call any explicit setter. - * - * @param baseRodHeat base heat value - * @param proximityRodHeat heat influenced by proximity - * @param rodTimer rod life / timer value - * @param type enum controlling cooler/fuel/mixte behaviour (must not be null) - * @return a non-null consumer that registers the built RodType - * @throws NullPointerException if {@code type} is null - */ - public static NonNullConsumer setRodTypeInfos(int baseRodHeat, int proximityRodHeat, int rodTimer, RodType.TypeRod type) { - RodType.Builder builder = new RodType.Builder() - .baseRodHeat(baseRodHeat) - .proximityRodHeat(proximityRodHeat) - .rodTimer(rodTimer); - - switch (type) { - case COOLER -> builder.coolerRodType(); - case FUEL -> builder.fuelRodType(); - default -> throw new IllegalArgumentException("Unsupported TypeRod: " + type + ". This error occurred during rod stats initialization in the CreateNuclearForge mod."); - } - - return item -> { - RodType built = builder.item(item).build(); - ROD_TYPE.register(item, built); - }; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/ReactorFluidTypesValue.java b/src/main/java/net/nuclearteam/createnuclear/api/ReactorFluidTypesValue.java deleted file mode 100644 index f9bd55025..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/ReactorFluidTypesValue.java +++ /dev/null @@ -1,82 +0,0 @@ -package net.nuclearteam.createnuclear.api; - -import com.simibubi.create.api.registry.SimpleRegistry; -import com.tterrag.registrate.util.nullness.NonNullConsumer; -import net.minecraft.world.level.material.Fluid; -import net.minecraft.world.level.material.Fluids; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; - -/** - * Registry-backed accessors for {@link ReactorFluidType} mappings. - *

- * This class provides a simple registry that maps {@link Fluid} instances to - * their corresponding {@link ReactorFluidType} definitions. It also exposes - * helper methods that produce consumers suitable for registering reactor - * fluid type information during mod initialization. - */ -public class ReactorFluidTypesValue { - /** - * Simple in-memory registry mapping fluids to {@link ReactorFluidType}. - */ - public static final SimpleRegistry REACTOR_FLUID_TYPE = SimpleRegistry.create(); - - /** - * Default {@link ReactorFluidType} returned when no mapping exists in the - * registry. Constructed once to avoid allocating a new instance on each lookup. - */ - public static final ReactorFluidType DEFAULT_REACTOR_FLUID_TYPE = new ReactorFluidType(Fluids.EMPTY.builtInRegistryHolder(), -1, -1); - - /** - * Get the {@link ReactorFluidType} associated with the given {@link Fluid}. - * If no mapping exists, a default empty {@link ReactorFluidType} is returned. - * - * @param fluid the fluid to look up (must not be null) - * @return the associated {@link ReactorFluidType} or a default instance if none present - * @throws NullPointerException if {@code fluid} is null - */ - public static ReactorFluidType getReactorFluidType(Fluid fluid) { - ReactorFluidType type = REACTOR_FLUID_TYPE.get(fluid); - return type == null ? DEFAULT_REACTOR_FLUID_TYPE : type; - } - - /** - * Create a consumer that registers the given {@link ReactorFluidType} - * builder for a fluid. - *

- * The returned consumer will call {@link ReactorFluidType.Builder#fluid(Fluid)} - * with the provided fluid and then build and register the resulting - * {@link ReactorFluidType} into the registry. - * - * @param type the reactor fluid type builder to register (must not be null) - * @return a non-null consumer that registers the mapping - */ - public static NonNullConsumer setReactorFluidTypeInfos(ReactorFluidType.Builder type) { - return fluid -> REACTOR_FLUID_TYPE.register(fluid, type.fluid(fluid).build()); - } - - /** - * Create a consumer that builds a {@link ReactorFluidType} using the - * provided numeric parameters and registers it for the fluid passed to - * the consumer. - *

- * The returned consumer will construct a builder pre-configured with the - * provided {@code maxHeat} and {@code efficiency} values, then call - * {@link ReactorFluidType.Builder#fluid(Fluid)} and register the built - * instance for the supplied fluid. - * - * @param maxHeat maximum heat value to apply to the built type - * @param efficiency efficiency value to apply to the built type - * @return a non-null consumer that registers the built {@link ReactorFluidType} - */ - public static NonNullConsumer setReactorFluidTypeInfos(int maxHeat, int efficiency) { - ReactorFluidType.Builder builder = new ReactorFluidType.Builder() - .maxHeat(maxHeat) - .efficiency(efficiency); - - return fluid -> { - ReactorFluidType built = builder.fluid(fluid).build(); - REACTOR_FLUID_TYPE.register(fluid, built); - }; - } - -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SmithingClothRecipeBuilder.java b/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SmithingClothRecipeBuilder.java deleted file mode 100644 index 45a9f9bcd..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SmithingClothRecipeBuilder.java +++ /dev/null @@ -1,105 +0,0 @@ -package net.nuclearteam.createnuclear.api.data.recipe; - -import com.google.gson.JsonObject; -import net.minecraft.advancements.Advancement; -import net.minecraft.advancements.AdvancementRewards; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.advancements.RequirementsStrategy; -import net.minecraft.advancements.critereon.RecipeUnlockedTrigger; -import net.minecraft.data.recipes.FinishedRecipe; -import net.minecraft.data.recipes.RecipeBuilder; -import net.minecraft.data.recipes.RecipeCategory; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeSerializer; -import net.minecraftforge.registries.ForgeRegistries; - -import javax.annotation.Nullable; -import java.util.function.Consumer; - -public class SmithingClothRecipeBuilder { - private final Ingredient template; - private final Ingredient base; - private final Ingredient addition; - private final RecipeCategory category; - private final ItemStack result; - private final Advancement.Builder advancement = Advancement.Builder.recipeAdvancement(); - private final RecipeSerializer type; - - public SmithingClothRecipeBuilder(RecipeSerializer pType, Ingredient pTemplate, Ingredient pBase, Ingredient pAddition, RecipeCategory pCategory, ItemStack pResult) { - this.category = pCategory; - this.type = pType; - this.template = pTemplate; - this.base = pBase; - this.addition = pAddition; - this.result = pResult; - } - - public static SmithingClothRecipeBuilder smithingCloth(Ingredient pTemplate, Ingredient pBase, Ingredient pAddition, RecipeCategory pCategory, ItemStack pResult) { - return new SmithingClothRecipeBuilder(RecipeSerializer.SMITHING_TRANSFORM, pTemplate, pBase, pAddition, pCategory, pResult); - } - - public SmithingClothRecipeBuilder unlocks(String pKey, CriterionTriggerInstance pCriterion) { - this.advancement.addCriterion(pKey, pCriterion); - return this; - } - - public void save(Consumer pRecipeConsumer, ResourceLocation pLocation) { - this.ensureValid(pLocation); - this.advancement.parent(RecipeBuilder.ROOT_RECIPE_ADVANCEMENT).addCriterion("has_the_recipe", RecipeUnlockedTrigger.unlocked(pLocation)).rewards(AdvancementRewards.Builder.recipe(pLocation)).requirements(RequirementsStrategy.OR); - pRecipeConsumer.accept(new SmithingClothRecipeBuilder.Result(pLocation, this.type, this.template, this.base, this.addition, this.result, this.advancement, pLocation.withPrefix("recipes/" + this.category.getFolderName() + "/"))); - } - - private void ensureValid(ResourceLocation pLocation) { - if (this.advancement.getCriteria().isEmpty()) { - throw new IllegalStateException("No way of obtaining recipe " + pLocation); - } - } - - public static record Result(ResourceLocation id, RecipeSerializer type, Ingredient template, Ingredient base, Ingredient addition, ItemStack result, Advancement.Builder advancement, ResourceLocation advancementId) implements FinishedRecipe { - public void serializeRecipeData(JsonObject jObject) { - jObject.add("template", this.template.toJson()); - jObject.add("base", this.base.toJson()); - jObject.add("addition", this.addition.toJson()); - JsonObject jsonobject = new JsonObject(); - jsonobject.addProperty("item", ForgeRegistries.ITEMS.getKey(this.result.getItem()).toString()); - if (!this.result.getOrCreateTag().isEmpty() && this.result.getOrCreateTag().contains("Cloth")) { - CompoundTag nbt = new CompoundTag(); - nbt.putString("Cloth", this.result.getOrCreateTag().getString("Cloth")); - jsonobject.addProperty("nbt", nbt.toString()); - } - jObject.add("result", jsonobject); - } - - /** - * Gets the ID for the recipe. - */ - public ResourceLocation getId() { - return this.id; - } - - public RecipeSerializer getType() { - return this.type; - } - - /** - * Gets the JSON for the advancement that unlocks this recipe. Null if there is no advancement. - */ - @Nullable - public JsonObject serializeAdvancement() { - return this.advancement.serializeToJson(); - } - - /** - * Gets the ID for the advancement associated with this recipe. Should not be null if {@link #getAdvancementJson} - * is non-null. - */ - @Nullable - public ResourceLocation getAdvancementId() { - return this.advancementId; - } - } -} - diff --git a/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SnowPowderRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SnowPowderRecipeGen.java deleted file mode 100644 index b0cfd1fe5..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/data/recipe/SnowPowderRecipeGen.java +++ /dev/null @@ -1,31 +0,0 @@ -package net.nuclearteam.createnuclear.api.data.recipe; - -import com.simibubi.create.api.data.recipe.DatagenMod; -import com.simibubi.create.api.data.recipe.ProcessingRecipeGen; -import com.simibubi.create.foundation.recipe.IRecipeTypeInfo; -import net.minecraft.data.PackOutput; -import net.nuclearteam.createnuclear.CNRecipeTypes; - -public abstract class SnowPowderRecipeGen extends ProcessingRecipeGen { - protected GeneratedRecipe moddedCompacting(DatagenMod mod, String input, String output) { - return create("compat/" + mod.getId() + "/" + output, b -> b.require(mod, input) - .output(mod, output) - .whenModLoaded(mod.getId())); - } - - protected GeneratedRecipe moddedPaths(DatagenMod mod, String... blocks) { - for(String block : blocks) { - moddedCompacting(mod, block, block + "_path"); - } - return null; - } - - public SnowPowderRecipeGen(PackOutput generator, String defaultNamespace) { - super(generator, defaultNamespace); - } - - @Override - protected IRecipeTypeInfo getRecipeType() { - return CNRecipeTypes.SNOW_POWDER; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/IMultiblockController.java b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/IMultiblockController.java deleted file mode 100644 index 7a9478dce..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/IMultiblockController.java +++ /dev/null @@ -1,8 +0,0 @@ -package net.nuclearteam.createnuclear.api.multiblock; - -import net.minecraft.core.Direction; - -public interface IMultiblockController { - void setMultiblockFacing(Direction f); - Direction getMultiblockFacing(); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/MultiBlockManagerBeta.java b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/MultiBlockManagerBeta.java index a0178483f..ce79b0120 100644 --- a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/MultiBlockManagerBeta.java +++ b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/MultiBlockManagerBeta.java @@ -17,7 +17,7 @@ public void register(String id, T data, IMultiBlockPattern blockPattern) { structures.add(new BlockPattern<>(id, data, blockPattern)); } - public BlockPattern findStructure(Level level, BlockPos pos, IMultiblockController entity) { + public BlockPattern findStructure(Level level, BlockPos pos) { List directions = new ArrayList<>(); directions.add(Direction.NORTH); directions.add(Direction.WEST); @@ -26,11 +26,8 @@ public BlockPattern findStructure(Level level, BlockPos pos, IMultiblockContr for (Direction direction : directions) { for (BlockPattern structure : structures) { - boolean result = structure.structure().matches(level, pos, direction); - if (result){ - entity.setMultiblockFacing(direction.getCounterClockWise()); - return structure; - } + var result = structure.structure().matches(level, pos, direction); + if (result) return structure; } } diff --git a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/TypeMultiblock.java b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/TypeMultiblock.java index 9f52c6ba0..e22beb151 100644 --- a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/TypeMultiblock.java +++ b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/TypeMultiblock.java @@ -1,26 +1,5 @@ package net.nuclearteam.createnuclear.api.multiblock; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - public enum TypeMultiblock { - REACTOR_T1(5), - REACTOR_T2(7), - REACTOR_T3(9) - ; - - private final int size; - private final String name; - - TypeMultiblock(int size) { - this.size = size; - this.name = CreateNuclearLang.asId(name()); - } - - public int getSize() { - return this.size; - } - - public String getName() { - return this.name; - } + REACTOR } diff --git a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/fluid/ReactorFluidType.java b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/fluid/ReactorFluidType.java deleted file mode 100644 index a84782323..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/fluid/ReactorFluidType.java +++ /dev/null @@ -1,186 +0,0 @@ -package net.nuclearteam.createnuclear.api.multiblock.fluid; - -import com.mojang.serialization.Codec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.Holder; -import net.minecraft.core.RegistryAccess; -import net.minecraft.core.registries.Registries; -import net.minecraft.core.Holder.Reference; -import net.minecraft.resources.RegistryFixedCodec; - -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.material.Fluid; -import net.minecraft.world.level.material.Fluids; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.api.ReactorFluidTypesValue; -import org.jetbrains.annotations.NotNull; - -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; - -/** - * Represents a reactor fluid type used by the mod's multiblock. - *

- * A {@code ReactorFluidType} holds the single fluid that identifies this - * fluid type, along with its heat-related and efficiency values. - */ -public record ReactorFluidType(Holder fluid, int maxHeat, int efficiency) { - - /** Serialization codec for saving/loading {@link ReactorFluidType} instances. */ - public static final Codec CODEC = RecordCodecBuilder.create(i -> i.group( - RegistryFixedCodec.create(Registries.FLUID).fieldOf("fluid").forGetter(ReactorFluidType::fluid), - Codec.INT.fieldOf("maxHeat").forGetter(ReactorFluidType::maxHeat), - Codec.INT.fieldOf("efficiency").forGetter(ReactorFluidType::efficiency) - ).apply(i, ReactorFluidType::new)); - - /** - * Searches the {@code FLUID_TYPE} registry for a {@link ReactorFluidType} - * matching the provided {@link Fluid}. - * - * @param registryAccess registry access for the world - * @param fluid the fluid to look up - * @return an {@link Optional} containing a {@link Reference} to the matching - * {@code ReactorFluidType} if found, otherwise {@link Optional#empty()} - */ - public static Optional> getTypeForFluid(RegistryAccess registryAccess, Fluid fluid) { - ResourceLocation fluidKey = ForgeRegistries.FLUIDS.getKey(fluid); - if (fluidKey == null) return Optional.empty(); - - return registryAccess.lookupOrThrow(CreateNuclearRegistries.FLUID_TYPE) - .listElements() - .filter(ref -> ref.value().fluid.unwrapKey() - .map(k -> k.location().equals(fluidKey)) - .orElse(false)) - .findFirst(); - } - - /** - * Resolves the {@code ReactorFluidType} for a given {@link Fluid}. - *

- * The resolution first checks the world's registries, then falls back to - * {@link ReactorFluidTypesValue}, and finally returns the registry fallback - * value if none is found. - * - * @param fluid the fluid whose reactor type should be resolved - * @param world the level used to access registries - * @return the resolved {@code ReactorFluidType} (never {@code null}) - */ - public static ReactorFluidType resolveReactorFluidType(Fluid fluid, Level world) { - return ReactorFluidType.getTypeForFluid(world.registryAccess(), fluid) - .map(Holder.Reference::value) - .orElseGet(() -> { - ReactorFluidType fromFluid = ReactorFluidTypesValue.getReactorFluidType(fluid); - return fromFluid.isNotEmptyFluid() - ? fromFluid - : world.registryAccess() - .registryOrThrow(CreateNuclearRegistries.FLUID_TYPE) - .getHolderOrThrow(CreateNuclearRegistries.FALLBACK_FLUID) - .value(); - }); - } - - - /** - * Returns whether this {@code ReactorFluidType} has an associated fluid - * (i.e. is not the empty/sentinel fluid). - * - * @return {@code true} if a real fluid is defined, {@code false} otherwise - */ - public boolean isNotEmptyFluid() { - return this.fluid.value() != Fluids.EMPTY; - } - - /** - * Fluent builder for creating an immutable {@link ReactorFluidType} instance. - *

- * Use the configuration methods and class {@link #build()} to obtain the - * resulting instance. - */ - public static class Builder { - private Holder fluid = null; - private int maxHeat = 0; - private int efficiency = 0; - private boolean maxHeatSet = false; - private boolean efficiencySet = false; - - /** - * Sets the maximum heat value for the built {@link ReactorFluidType}. - * - * @param maxHeat maximum heat value - * @return this builder - */ - public Builder maxHeat(int maxHeat) { - this.maxHeat = maxHeat; - this.maxHeatSet = true; - return this; - } - - /** - * Sets the efficiency value for the built {@link ReactorFluidType}. - * - * @param efficiency efficiency value - * @return this builder - */ - public Builder efficiency(int efficiency) { - this.efficiency = efficiency; - this.efficiencySet = true; - return this; - } - - /** - * Sets the fluid identifying this type from a {@link FluidStack}. - * - * @param fluidStack the fluid stack providing the fluid - * @return this builder - */ - public Builder fluid(FluidStack fluidStack) { - return fluid(fluidStack.getFluid()); - } - - /** - * Sets the fluid identifying this type. Calling this again replaces - * the previously set fluid. - * - * @param fluid the fluid to associate with this type - * @return this builder - */ - public Builder fluid(Fluid fluid) { - this.fluid = fluid.builtInRegistryHolder(); - return this; - } - - /** - * Builds the immutable {@link ReactorFluidType} instance. - * - * @throws IllegalStateException if required fields are missing - * @return the created instance - */ - public ReactorFluidType build() { - List missing = new ArrayList<>(); - if (fluid == null) missing.add("fluid"); - if (!maxHeatSet) missing.add("maxHeat"); - if (!efficiencySet) missing.add("efficiency"); - - if (!missing.isEmpty()) - throw new IllegalStateException("Missing required ReactorFluidType fields: " + String.join(", ", missing)); - - return new ReactorFluidType(fluid, maxHeat, efficiency); - } - } - - @Override - public @NotNull String toString() { - String fluidName = this.fluid.unwrapKey() - .map(k -> k.location().toString()) - .orElseGet(() -> { - ResourceLocation rl = ForgeRegistries.FLUIDS.getKey(this.fluid.value()); - return rl != null ? rl.toString() : this.fluid.value().toString(); - }); - - return "ReactorFluidType{fluid=" + fluidName + ", maxHeat=" + maxHeat() + ", efficiency=" + efficiency() + "}"; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/rods/RodType.java b/src/main/java/net/nuclearteam/createnuclear/api/multiblock/rods/RodType.java deleted file mode 100644 index 03e1eafd9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/multiblock/rods/RodType.java +++ /dev/null @@ -1,376 +0,0 @@ -package net.nuclearteam.createnuclear.api.multiblock.rods; - -import com.mojang.serialization.Codec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.MethodsReturnNonnullByDefault; -import net.minecraft.core.Holder; -import net.minecraft.core.Holder.Reference; -import net.minecraft.core.RegistryAccess; -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.RegistryFixedCodec; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.StringRepresentable; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; -import net.minecraft.world.level.ItemLike; -import net.minecraft.world.level.Level; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.api.ItemRodTypesValue; - -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.function.Predicate; -import java.util.function.Supplier; - -/** - * Represents a rod type used by the mod's multiblock. - *

- * A {@code RodType} holds the single item that represents this rod type, - * heat-related values, a timing value, and a {@link TypeRod} indicating the - * category (fuel, cooler, or mixed). - */ -@MethodsReturnNonnullByDefault -public record RodType(Holder item, - Supplier baseRodHeat, - Supplier proximityRodHeat, - Supplier rodTimer, - Supplier ratio, - TypeRod type) { - - public RodType(Holder item, - int baseRodHeat, float proximityRodHeat, - int rodTimer, TypeRod type) { - this(item, baseRodHeat, proximityRodHeat, rodTimer, type, 1); - } - - public RodType(Holder item, - int baseRodHeat, float proximityRodHeat, - int rodTimer, TypeRod type, int ratio) { - this(item, () -> baseRodHeat, () -> proximityRodHeat, () -> rodTimer, () -> ratio, type); - } - - /** - * Serialization codec for saving/loading {@link RodType} instances. - */ - public static final Codec CODEC = RecordCodecBuilder.create(i -> i.group( - RegistryFixedCodec.create(Registries.ITEM).fieldOf("item").forGetter(RodType::item), - Codec.INT.fieldOf("baseRodHeat").forGetter(rt -> rt.baseRodHeat().get()), - Codec.FLOAT.fieldOf("proximityRodHeat").forGetter(rt -> rt.proximityRodHeat().get()), - Codec.INT.fieldOf("rodTimer").forGetter(rt -> rt.rodTimer().get()), - StringRepresentable.fromEnum(TypeRod::values).fieldOf("type").forGetter(RodType::type), - Codec.INT.optionalFieldOf("ratio", 1).forGetter(rt -> rt.ratio().get()) - ).apply(i, RodType::new)); - - /** - * Searches the {@code ROD_TYPE} registry for a {@link RodType} matching the - * provided {@link Item}. - * - * @param registryAccess registry access for the world - * @param item the item to look up - * @return an {@link Optional} containing a {@link Reference} to the matching - * {@code RodType} if found, otherwise {@link Optional#empty()} - */ - public static Optional> getTypeForItem(RegistryAccess registryAccess, Item item) { - return registryAccess.lookupOrThrow(CreateNuclearRegistries.ROD_TYPE) - .listElements() - .filter(ref -> ref.value().item.equals(item.builtInRegistryHolder())) - .findFirst(); - } - - /** - * Resolves the {@code RodType} for a given {@link Item}. The method first - * checks the world's registries, then falls back to {@link ItemRodTypesValue}, - * and lastly returns a fallback registry value if none is found. - * - * @param item the item whose rod type should be resolved - * @param world the world (level) used to access registries - * @return the resolved {@code RodType} (never {@code null}) - */ - public static RodType resolveRodType(Item item, Level world) { - return RodType.getTypeForItem(world.registryAccess(), item) - .map(Holder.Reference::value) - .orElseGet(() -> { - RodType fromItem = ItemRodTypesValue.getRodType(item); - return fromItem.isNotEmptyItem() - ? fromItem - : world.registryAccess() - .registryOrThrow(CreateNuclearRegistries.ROD_TYPE) - .getHolderOrThrow(CreateNuclearRegistries.FALLBACK_ROD) - .value(); - }); - } - - /** - * Returns whether this {@code RodType} has an associated item (i.e. is - * not the empty/sentinel item). - * - * @return {@code true} if a real item is defined, {@code false} otherwise - */ - public boolean isNotEmptyItem() { - return this.item.value() != Items.AIR; - } - - /** - * Fluent builder for creating an immutable {@link RodType} instance. - *

- * Every heat/timing value ({@code baseRodHeat}, {@code proximityRodHeat}, - * {@code rodTimer}, {@code ratio}) can be set either as a fixed - * primitive (evaluated once, at build time) or as a {@link Supplier} - * (re-evaluated on every call to the corresponding {@link RodType} - * accessor). The primitive overloads are pure convenience: they simply - * wrap the given value in a constant supplier, e.g. - * {@code baseRodHeat(5)} is equivalent to {@code baseRodHeat(() -> 5)}. - * Use the {@link Supplier} overloads to back a value with a live source - * such as a config option (see {@code CNItems} for examples), so that - * changes are picked up without rebuilding the {@code RodType}. - *

- * {@code item}, {@code type}, {@code baseRodHeat}, {@code proximityRodHeat} - * and {@code rodTimer} are required; {@code ratio} defaults to a - * constant {@code 1} and never needs to be set explicitly. Call - * {@link #build()} once all required values are configured. - */ - public static class Builder { - private Holder item = null; - private Supplier baseRodHeat = null; - private Supplier proximityRodHeat = null; - private Supplier rodTimer = null; - private Supplier ratio = () -> 1; - private TypeRod type = TypeRod.NONE; - - /** - * Sets a fixed base heat value, evaluated once at build time. - * Equivalent to {@code baseRodHeat(() -> baseRodHeat)}. - * - * @param baseRodHeat constant base heat value - * @return this builder - */ - public Builder baseRodHeat(int baseRodHeat) { - return baseRodHeat(() -> baseRodHeat); - } - - /** - * Sets a dynamic base heat value, re-evaluated every time - * {@link RodType#baseRodHeat()} is called (e.g. to reflect a live - * config option instead of a value frozen at registration time). - * - * @param baseRodHeat supplier producing the base heat value on demand - * @return this builder - */ - public Builder baseRodHeat(Supplier baseRodHeat) { - this.baseRodHeat = baseRodHeat; - return this; - } - - /** - * Sets a fixed proximity heat value (heat contributed by nearby rods), - * evaluated once at build time. - * Equivalent to {@code proximityRodHeat(() -> proximityRodHeat)}. - * - * @param proximityRodHeat constant proximity heat value - * @return this builder - */ - public Builder proximityRodHeat(float proximityRodHeat) { - return proximityRodHeat(() -> proximityRodHeat) ; - } - - /** - * Sets a dynamic proximity heat value, re-evaluated every time - * {@link RodType#proximityRodHeat()} is called. - * - * @param proximityRodHeat supplier producing the proximity heat value on demand - * @return this builder - */ - public Builder proximityRodHeat(Supplier proximityRodHeat) { - this.proximityRodHeat = proximityRodHeat; - return this; - } - - /** - * Sets a fixed timer (duration) for the rod's behavior, evaluated - * once at build time. Equivalent to {@code rodTimer(() -> rodTimer)}. - * - * @param rodTimer constant duration in ticks or mod-specific units - * @return this builder - */ - public Builder rodTimer(int rodTimer) { - return rodTimer(() -> rodTimer); - } - - /** - * Sets a dynamic timer (duration) for the rod's behavior, - * re-evaluated every time {@link RodType#rodTimer()} is called. - * - * @param rodTimer supplier producing the duration on demand - * @return this builder - */ - public Builder rodTimer(Supplier rodTimer) { - this.rodTimer = rodTimer; - return this; - } - - /** - * Sets a fixed heat ratio, evaluated once at build time. Optional: - * defaults to a constant {@code 1} if never called. - * Equivalent to {@code ratio(() -> ratio)}. - * - * @param ratio constant heat ratio value - * @return this builder - */ - public Builder ratio(int ratio) { - return ratio(() -> ratio); - } - - /** - * Sets a dynamic heat ratio, re-evaluated every time - * {@link RodType#ratio()} is called. Optional: defaults to a - * constant {@code 1} if never called. - * - * @param ratio supplier producing the heat ratio on demand - * @return this builder - */ - public Builder ratio(Supplier ratio) { - this.ratio = ratio; - return this; - } - - /** - * Sets the rod category directly. Prefer the {@link #coolerRodType()} - * and {@link #fuelRodType()} convenience methods for the common - * cases; use this overload only to set {@link TypeRod#NONE} - * explicitly (e.g. for a fallback/sentinel rod type). - * - * @param type the rod category to assign - * @return this builder - */ - public Builder type(TypeRod type) { - this.type = type; - return this; - } - - /** - * Sets the rod type to {@link TypeRod#COOLER}. - * - * @return this builder - */ - public Builder coolerRodType() { - return type(TypeRod.COOLER); - } - - /** - * Sets the rod type to {@link TypeRod#FUEL}. - * - * @return this builder - */ - public Builder fuelRodType() { - return type(TypeRod.FUEL); - } - - /** - * Sets the item that represents this rod type. Calling this again - * replaces the previously set item. - * - * @param item the item to associate with this rod type - * @return this builder - */ - public Builder item(ItemLike item) { - this.item = item.asItem().builtInRegistryHolder(); - return this; - } - - /** - * Builds the immutable {@link RodType} instance. - *

- * Validates that {@code item} and {@code type}, {@code baseRodHeat}, - * {@code proximityRodHeat} and {@code rodTimer} have all been set - * (either as a fixed value or as a dynamic {@link Supplier}); - * {@code ratio} is exempt since it defaults to a constant - * {@code 1}. - * - * @throws IllegalStateException if one or more required fields are missing, - * naming every missing field in the exception message - * @return the created instance - */ - public RodType build() { - List missing = new ArrayList<>(); - if (item == null) missing.add("item"); - if (type == null) missing.add("type"); - if (baseRodHeat == null) missing.add("baseRodHeat"); - if (proximityRodHeat == null) missing.add("proximityRodHeat"); - if (rodTimer == null) missing.add("rodTimer"); - - if (!missing.isEmpty()) - throw new IllegalStateException("Missing required RodType fields: " + String.join(", ", missing)); - - return new RodType(item, baseRodHeat, proximityRodHeat, rodTimer, ratio, type); - } - } - - public enum TypeRod implements StringRepresentable { - /** - * Fuel rod: generates heat via reaction. - */ - FUEL, - /** - * Cooler rod: reduces or absorbs heat. - */ - COOLER, - /** - * Sentinel value for the fallback/default rod type — no real category. - */ - NONE - ; - - @Override - public String getSerializedName() { - return name(); - } - } - - public static final class TypeRodPredicate { - public static final Predicate IS_NOT_NULL = Objects::nonNull; - - public static boolean isFuel(ItemStack stack, Level level) { - return IS_NOT_NULL.test(stack) && RodType.resolveRodType(stack.getItem(), level).type == TypeRod.FUEL; - } - - public static boolean isFuel(RodType rodType) { - return rodType != null && rodType.type() == TypeRod.FUEL; - } - - public static boolean isCooled(ItemStack stack, Level level) { - return IS_NOT_NULL.test(stack) && RodType.resolveRodType(stack.getItem(), level).type == TypeRod.COOLER; - } - - public static boolean isCooled(RodType rodType) { - return rodType != null && rodType.type() == TypeRod.COOLER; - } - - public static String tooltipKey(ItemStack stack, Level level) { - if (!IS_NOT_NULL.test(stack)) return "unknown"; - if (isFuel(stack, level)) return "fuel"; - if (isCooled(stack, level)) return "cooled"; - return "unknown"; - } - } - - @Override - public String toString() { - String itemName = this.item.unwrapKey() - .map(k -> k.location().toString()) - .orElseGet(() -> { - ResourceLocation rl = ForgeRegistries.ITEMS.getKey(this.item.value()); - return rl != null ? rl.toString() : this.item.value().toString(); - }); - - return "RodType [item: " + itemName + - ", baseRodHeat: " + this.baseRodHeat().get() + - ", proximityRodHeat: " + this.proximityRodHeat().get() + - ", rodTimer: " + this.rodTimer().get() + - ", ratio: " + this.ratio().get() + - ", type: " + this.type() + "]"; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/radiation/IRadiationSource.java b/src/main/java/net/nuclearteam/createnuclear/api/radiation/IRadiationSource.java deleted file mode 100644 index 11e1d7fbb..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/radiation/IRadiationSource.java +++ /dev/null @@ -1,9 +0,0 @@ -package net.nuclearteam.createnuclear.api.radiation; - -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; - -public interface IRadiationSource { - double getRadiation(ItemStack stack, LivingEntity entity); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/api/radiation/RadiationRegistry.java b/src/main/java/net/nuclearteam/createnuclear/api/radiation/RadiationRegistry.java deleted file mode 100644 index 9a878a943..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/api/radiation/RadiationRegistry.java +++ /dev/null @@ -1,96 +0,0 @@ -package net.nuclearteam.createnuclear.api.radiation; - -import net.minecraft.resources.ResourceKey; -import net.minecraft.tags.TagKey; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.biome.Biome; -import java.util.HashMap; -import java.util.Map; -import java.util.Map.Entry; - -public class RadiationRegistry { - private static final Map ITEM_VALUE = new HashMap<>(); - private static final Map, Double> TAG_VALUE = new HashMap<>(); - private static final Map, Double> BIOME_VALUE = new HashMap<>(); - - private RadiationRegistry() {} - - public static Builder register() { - return new Builder(); - } - - public static double get(ItemStack stack) { - Item item = stack.getItem(); - - Double value = ITEM_VALUE.get(item); - if (value != null) return value; - - for (Entry, Double> entry : TAG_VALUE.entrySet()) { - if (stack.is(entry.getKey())) { - return entry.getValue(); - } - } - - return 0D; - } - - public static double get(ResourceKey stack) { - Double value = BIOME_VALUE.get(stack); - if (value != null) return value; - - return 0D; - } - - public static double getRadiation(ItemStack stack, LivingEntity entity) { - return get(stack) * stack.getCount(); - } - public static double getRadiation(ResourceKey biome, LivingEntity entity) { - return get(biome); - } - - public static class Builder { - private Item item; - private TagKey tag; - private ResourceKey biome; - private double value; - - public Builder item(Item item) { - this.item = item; - return this; - } - - public Builder tag(TagKey tag) { - this.tag = tag; - return this; - } - - public Builder biome(ResourceKey biome) { - this.biome = biome; - return this; - } - - public Builder value(double value) { - this.value = value; - return this; - } - - public void build() { - if (item != null) { - if (item instanceof IRadiationSource) - throw new IllegalStateException("Item " + item + " implements IRadiationSource and should not also be registered in RadiationRegistry (would cause double counting)."); - ITEM_VALUE.put(item, value); - } - - if (tag != null) { - TAG_VALUE.put(tag, value); - } - - if (biome != null) { - BIOME_VALUE.put(biome, value); - } - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/compat/Mods.java b/src/main/java/net/nuclearteam/createnuclear/compat/Mods.java deleted file mode 100644 index 494b62448..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/compat/Mods.java +++ /dev/null @@ -1,86 +0,0 @@ -package net.nuclearteam.createnuclear.compat; - -import net.createmod.catnip.lang.Lang; -import net.createmod.catnip.platform.CatnipServices; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.Item; -import net.minecraft.world.level.ItemLike; -import net.minecraft.world.level.block.Block; -import net.minecraftforge.fml.loading.LoadingModList; -import net.minecraftforge.registries.ForgeRegistries; - -import java.util.Optional; -import java.util.function.Supplier; - -public enum Mods { - ALEXS_CAVE("alexscaves") - ; - - private final String id; - - Mods(String name) { - id = Lang.asId(name); - } - - Mods() { - id = Lang.asId(name()); - } - - /** - * @return the mod id - */ - public String id() { - return id; - } - - public ResourceLocation rl(String path) { - return new ResourceLocation(id, path); - } - - public Block getBlock(String id) { - return ForgeRegistries.BLOCKS.getValue(rl(id)); - } - - public Item getItem(String id) { - return ForgeRegistries.ITEMS.getValue(rl(id)); - } - - public boolean contains(ItemLike entry) { - if (!isLoaded()) - return false; - Item asItem = entry.asItem(); - return asItem != null && CatnipServices.REGISTRIES.getKeyOrThrow(asItem) - .getNamespace() - .equals(id); - } - - /** - * @return a boolean of whether the mod is loaded or not based on mod id - */ - public boolean isLoaded() { - return LoadingModList.get().getModFileById(id) != null; - } - - /** - * Simple hook to run code if a mod is installed - * - * @param toRun will be run only if the mod is loaded - * @return Optional.empty() if the mod is not loaded, otherwise an Optional of the return value of the given supplier - */ - public Optional runIfInstalled(Supplier> toRun) { - if (isLoaded()) - return Optional.of(toRun.get().get()); - return Optional.empty(); - } - - /** - * Simple hook to execute code if a mod is installed - * - * @param toExecute will be executed only if the mod is loaded - */ - public void executeIfInstalled(Supplier toExecute) { - if (isLoaded()) { - toExecute.get().run(); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/compat/alexscave/AlexscaveCompat.java b/src/main/java/net/nuclearteam/createnuclear/compat/alexscave/AlexscaveCompat.java deleted file mode 100644 index 207f5683c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/compat/alexscave/AlexscaveCompat.java +++ /dev/null @@ -1,76 +0,0 @@ -package net.nuclearteam.createnuclear.compat.alexscave; - -import com.github.alexmodguy.alexscaves.AlexsCaves; -import com.github.alexmodguy.alexscaves.client.ClientProxy; -import com.github.alexmodguy.alexscaves.server.block.ACBlockRegistry; -import com.github.alexmodguy.alexscaves.server.block.TremorzillaEggBlock; -import com.github.alexmodguy.alexscaves.server.entity.living.RaycatEntity; -import com.github.alexmodguy.alexscaves.server.entity.living.TremorzillaEntity; -import com.github.alexmodguy.alexscaves.server.misc.ACSoundRegistry; -import com.github.alexmodguy.alexscaves.server.misc.ACTagRegistry; -import net.minecraft.core.BlockPos; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.level.Explosion; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; - -import static com.github.alexmodguy.alexscaves.client.ClientProxy.random; - -public class AlexscaveCompat { - - public AlexscaveCompat() {} - - public boolean MobSpawn(BlockState state, Level level, BlockPos.MutableBlockPos carve, float itemDropModifier, Explosion dummyExplosion){ - if(state.is(ACBlockRegistry.TREMORZILLA_EGG.get()) && state.getBlock() instanceof TremorzillaEggBlock tremorzillaEggBlock){ - tremorzillaEggBlock.spawnDinosaurs(level, carve, state); - return true; - } - else if (AlexsCaves.COMMON_CONFIG.nukesSpawnItemDrops.get() && random.nextFloat() < itemDropModifier && state.getFluidState().isEmpty()) { - level.destroyBlock(carve, true); - } else { - state.onBlockExploded(level, carve, dummyExplosion); - } - return false; - } - - public boolean isRaycat(LivingEntity entity) { - return entity instanceof RaycatEntity; - } - - public boolean isTremorzilla(LivingEntity entity){ - return entity instanceof TremorzillaEntity; - } - - public boolean ACResConfig(){ - return AlexsCaves.COMMON_CONFIG.nukeMaxBlockExplosionResistance.get() <= 0; - } - - public boolean ACDestroyable(BlockState state) { - return !state.is(ACTagRegistry.NUKE_PROOF) && - (state.getBlock().getExplosionResistance() < AlexsCaves.COMMON_CONFIG.nukeMaxBlockExplosionResistance.get() - || state.is(ACBlockRegistry.TREMORZILLA_EGG.get())); - } - - public void NukeParam() { - ((ClientProxy) AlexsCaves.PROXY).renderNukeSkyDarkFor = 70; - ((ClientProxy) AlexsCaves.PROXY).muteNonNukeSoundsFor = 50; - } - - public SoundEvent[] GetACSounds(){ - return new SoundEvent[] { - ACSoundRegistry.LARGE_NUCLEAR_EXPLOSION.get(), - ACSoundRegistry.NUCLEAR_EXPLOSION.get(), - ACSoundRegistry.NUCLEAR_EXPLOSION_RINGING.get(), - ACSoundRegistry.NUCLEAR_EXPLOSION_RUMBLE.get() - }; - } - - public boolean GetACConfig(){ - return AlexsCaves.CLIENT_CONFIG.nuclearBombFlash.get(); - } - - public void UpdateACProxy() { - ((ClientProxy) AlexsCaves.PROXY).renderNukeFlashFor = 16; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/compat/jei/CreateNuclearJEI.java b/src/main/java/net/nuclearteam/createnuclear/compat/jei/CreateNuclearJEI.java index 0f29cc818..febadd4e5 100644 --- a/src/main/java/net/nuclearteam/createnuclear/compat/jei/CreateNuclearJEI.java +++ b/src/main/java/net/nuclearteam/createnuclear/compat/jei/CreateNuclearJEI.java @@ -18,12 +18,10 @@ import mezz.jei.api.registration.IRecipeRegistration; import mezz.jei.api.registration.IRecipeTransferRegistration; import mezz.jei.api.runtime.IIngredientManager; -import mezz.jei.api.runtime.IJeiRuntime; import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.client.Minecraft; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.ItemLike; @@ -31,9 +29,7 @@ import net.nuclearteam.createnuclear.CNRecipeTypes; import net.nuclearteam.createnuclear.CreateNuclear; import net.nuclearteam.createnuclear.compat.jei.category.FanEnrichedCategory; -import net.nuclearteam.createnuclear.compat.jei.category.FanSnowPowderCategory; import net.nuclearteam.createnuclear.content.kinetics.fan.processing.EnrichedRecipe; -import net.nuclearteam.createnuclear.content.kinetics.fan.processing.SnowPowderRecipe; import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; import javax.annotation.ParametersAreNonnullByDefault; @@ -51,54 +47,41 @@ @MethodsReturnNonnullByDefault public class CreateNuclearJEI implements IModPlugin { private static final ResourceLocation MOD_ID = CreateNuclear.asResource("jei_plugin"); + @Override + public ResourceLocation getPluginUid() { + return MOD_ID; + } - private final List> allCategories = new ArrayList<>(); public IIngredientManager ingredientManager; - - public static IJeiRuntime runtime; + private static final List> Categories = new ArrayList<>(); private void loadCategories() { - allCategories.clear(); + Categories.clear(); CreateRecipeCategory enriched = builder(EnrichedRecipe.class) .addTypedRecipes(CNRecipeTypes.ENRICHED::getType) .catalystStack(ProcessingViaFanCategory.getFan("fan_enriched")) .doubleItemIcon(AllItems.PROPELLER.get(), CNBlocks.ENRICHING_CAMPFIRE.get()) .emptyBackground(178, 72) - .build("fan_enriched", FanEnrichedCategory::new), - snow_powder = builder(SnowPowderRecipe.class) - .addTypedRecipes(CNRecipeTypes.SNOW_POWDER::getType) - .catalystStack(ProcessingViaFanCategory.getFan("fan_snow_powder")) - .doubleItemIcon(AllItems.PROPELLER.get(), Items.POWDER_SNOW_BUCKET) - .emptyBackground(178, 72) - .build("fan_snow_powder", FanSnowPowderCategory::new) + .build("fan_enriched", FanEnrichedCategory::new) ; } - private > CategoryBuilder builder(Class recipeClass) { - return new CategoryBuilder<>(recipeClass, allCategories); - } - @Override - public ResourceLocation getPluginUid() { - return MOD_ID; + public void registerRecipes(IRecipeRegistration registration) { + ingredientManager = registration.getIngredientManager(); + Categories.forEach(c -> c.registerRecipes(registration)); } @Override public void registerCategories(IRecipeCategoryRegistration registration) { loadCategories(); - registration.addRecipeCategories(allCategories.toArray(IRecipeCategory[]::new)); - } - - @Override - public void registerRecipes(IRecipeRegistration registration) { - ingredientManager = registration.getIngredientManager(); - allCategories.forEach(c -> c.registerRecipes(registration)); + registration.addRecipeCategories(Categories.toArray(IRecipeCategory[]::new)); } @Override public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) { - allCategories.forEach(c -> c.registerCatalysts(registration)); + Categories.forEach(c -> c.registerCatalysts(registration)); } @Override @@ -106,9 +89,12 @@ public void registerRecipeTransferHandlers(IRecipeTransferRegistration registrat registration.addRecipeTransferHandler(new BlueprintTransferHandler(), RecipeTypes.CRAFTING); } + private > CategoryBuilder builder(Class recipeClass) { + return new CategoryBuilder<>(recipeClass); + } + private static class CategoryBuilder> { private final Class recipeClass; - private final List> targetCategories; private Predicate predicate = cRecipes -> true; private IDrawable background; @@ -117,9 +103,8 @@ private static class CategoryBuilder> { private final List>> recipeListConsumers = new ArrayList<>(); private final List> catalysts = new ArrayList<>(); - public CategoryBuilder(Class recipeClass, List> targetCategories) { + public CategoryBuilder(Class recipeClass) { this.recipeClass = recipeClass; - this.targetCategories = targetCategories; } public CategoryBuilder enableIf(Predicate predicate) { @@ -141,7 +126,6 @@ public CategoryBuilder addRecipes(Supplier> collectio return addRecipeListConsumer(recipes -> recipes.addAll(collection.get())); } - @SuppressWarnings("unchecked") public CategoryBuilder addAllRecipesIf(Predicate> pred) { return addRecipeListConsumer(recipes -> consumeAllRecipes(recipe -> { if (pred.test(recipe)) { @@ -290,7 +274,7 @@ public CreateRecipeCategory build(String name, CreateRecipeCategory.Factory(CreateNuclear.asResource(name), recipeClass), CreateNuclearLang.translateDirect("recipe." + name), background, icon, recipesSupplier, catalysts); CreateRecipeCategory category = factory.create(info); - targetCategories.add(category); + Categories.add(category); return category; } } @@ -302,11 +286,6 @@ public static void consumeAllRecipes(Consumer> consumer) { .getRecipes() .forEach(consumer); } - - @Override - public void onRuntimeAvailable(IJeiRuntime runtime) { - CreateNuclearJEI.runtime = runtime; - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/compat/jei/category/FanSnowPowderCategory.java b/src/main/java/net/nuclearteam/createnuclear/compat/jei/category/FanSnowPowderCategory.java deleted file mode 100644 index 0593fc4e9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/compat/jei/category/FanSnowPowderCategory.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.compat.jei.category; - -import com.simibubi.create.compat.jei.category.ProcessingViaFanCategory; -import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics; -import com.simibubi.create.foundation.gui.AllGuiTextures; -import net.createmod.catnip.gui.element.GuiGameElement; -import net.minecraft.client.gui.GuiGraphics; -import net.minecraft.network.chat.Component; -import net.minecraft.world.level.block.Blocks; -import net.nuclearteam.createnuclear.content.kinetics.fan.processing.SnowPowderRecipe; - -public class FanSnowPowderCategory extends ProcessingViaFanCategory.MultiOutput { - public FanSnowPowderCategory(Info info) { - super(info); - } - - @Override - protected AllGuiTextures getBlockShadow() { - return AllGuiTextures.JEI_LIGHT; - } - - @Override - protected void renderAttachedBlock(GuiGraphics graphics) { - GuiGameElement.of(Blocks.POWDER_SNOW.defaultBlockState()) - .scale(SCALE) - .atLocal(0, 0, 2) - .lighting(AnimatedKinetics.DEFAULT_LIGHTING) - .render(graphics); - } - - @Override - public Component getTitle() { - return Component.translatable("createnuclear.snow_powder.fan.recipe"); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/biome/BiomeIrradiationExtractorItem.java b/src/main/java/net/nuclearteam/createnuclear/content/biome/BiomeIrradiationExtractorItem.java deleted file mode 100644 index 1cb82467c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/biome/BiomeIrradiationExtractorItem.java +++ /dev/null @@ -1,100 +0,0 @@ -package net.nuclearteam.createnuclear.content.biome; - -import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.Mth; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResultHolder; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.BiomeIrradiationService; - -import java.util.List; - -public class BiomeIrradiationExtractorItem extends Item { - public static final String TAG = "biome_restore"; - private static final int CHARGE_PER_CLICK = 1; - - public BiomeIrradiationExtractorItem(Properties pProperties) { - super(pProperties); - } - - @Override - public InteractionResultHolder use(Level level, Player player, InteractionHand interactionHand) { - ItemStack stack = player.getItemInHand(interactionHand); - - if (level.isClientSide || !(level instanceof ServerLevel serverLevel)) { - return InteractionResultHolder.success(stack); - } - - if (getCharge(stack) >= getMaxCharge()) return InteractionResultHolder.pass(stack); - - boolean restored = BiomeIrradiationService.restoreArea(serverLevel, player.blockPosition()); - if (!restored) return InteractionResultHolder.pass(stack); - - ItemStack charged = stack.copyWithCount(1); - addCharge(charged, CHARGE_PER_CLICK); - - stack.shrink(1); - if (stack.isEmpty()) { - return InteractionResultHolder.success(charged); - } - - if (!player.getInventory().add(charged)) { - player.drop(charged, false); - } - return InteractionResultHolder.success(stack); - } - - @Override - public void appendHoverText(ItemStack stack, Level level, List tooltip, TooltipFlag tooltipFlag) { - super.appendHoverText(stack, level, tooltip, tooltipFlag); - if (tooltipFlag.isAdvanced() && getCharge(stack) > 0) { - tooltip - .add(CreateNuclearLang.translateDirect("tooltip.biome_irradiation_extractor." + TAG, getCharge(stack), getMaxCharge()) - .withStyle(ChatFormatting.GRAY)); - } - } - - @Override - public int getMaxStackSize(ItemStack stack) { - return getCharge(stack) > 0 ? 1 : this.getMaxStackSize(); - } - - @Override - public int getBarWidth(ItemStack stack) { - return Math.round(13.0f * getCharge(stack) / getMaxCharge()); - } - - @Override - public int getBarColor(ItemStack stack) { - return 0x4A90D9; - } - - public static int getCharge(ItemStack stack) { - return getChargeTag(stack, 0); - } - - public static int getMaxCharge() { - return CNConfigs.server().biomeRestore.maxCharge.get(); - } - - public static void addCharge(ItemStack stack, int amount) { - int current = getCharge(stack); - int next = Mth.clamp(current + amount, 0, getMaxCharge()); - stack.getOrCreateTag().putInt(TAG, next); - } - - public static int getChargeTag(ItemStack stack, int defaultValue) { - if (stack == null) return defaultValue; - CompoundTag tag = stack.getTag(); - return (tag != null && tag.contains(TAG)) ? tag.getInt(TAG) : defaultValue; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/AnimalUtil.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/AnimalUtil.java deleted file mode 100644 index 1ac5958bd..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/AnimalUtil.java +++ /dev/null @@ -1,40 +0,0 @@ -package net.nuclearteam.createnuclear.content.contraptions.irradiated; - -import net.minecraft.network.chat.Component; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -import java.util.function.Predicate; - -public class AnimalUtil { - private AnimalUtil() {} - - public static boolean isFood(ItemStack stack, Ingredient foodItems) { - return isFood(stack, foodItems, $ -> true); - } - - public static boolean isFood(ItemStack stack, Ingredient foodItems, Predicate extraTest) { - if (stack.is(CNItems.YELLOWCAKE.get())) { - return true; - } - - return foodItems.test(stack) || extraTest.test(stack); - } - - /** - * Taming for irradiated creatures is still work in progress: rather than actually - * taming the mob, this informs the player and consumes the interaction. - */ - public static InteractionResult blockTamingWip(Player player, Level level) { - if (!level.isClientSide) { - player.sendSystemMessage(Component.translatable("irradiated.taming.wip")); - } - - return InteractionResult.sidedSuccess(level.isClientSide); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/CNModelLayers.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/CNModelLayers.java index ee9ebede5..e62c7855f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/CNModelLayers.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/CNModelLayers.java @@ -2,7 +2,6 @@ import com.google.common.collect.Sets; import net.minecraft.client.model.geom.ModelLayerLocation; -import net.minecraftforge.fml.common.Mod; import net.nuclearteam.createnuclear.CreateNuclear; import java.util.Set; @@ -13,9 +12,6 @@ public class CNModelLayers { public static final ModelLayerLocation IRRADIATED_CHICKEN = register("irradiated_chicken"); public static final ModelLayerLocation IRRADIATED_WOLF = register("irradiated_wolf"); public static final ModelLayerLocation IRRADIATED_CAT = register("irradiated_cat"); - public static final ModelLayerLocation IRRADIATED_COW = register("irradiated_cow"); - - public static final ModelLayerLocation ANTI_IRRADIATION_ARMOR = register("default_anti_radiation_suit"); private static ModelLayerLocation register(String path) { return register(path, "main"); diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/IrradiatedAnimal.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/IrradiatedAnimal.java deleted file mode 100644 index 288339aec..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/IrradiatedAnimal.java +++ /dev/null @@ -1,90 +0,0 @@ -package net.nuclearteam.createnuclear.content.contraptions.irradiated; - -import net.minecraft.core.BlockPos; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.tags.BlockTags; -import net.minecraft.world.effect.MobEffectInstance; -import net.minecraft.world.effect.MobEffects; -import net.minecraft.world.entity.EntityEvent; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.MobSpawnType; -import net.minecraft.world.entity.animal.Animal; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.block.LevelEvent; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.event.ForgeEventFactory; - -import java.util.HashMap; -import java.util.Map; - -public interface IrradiatedAnimal { - Map, EntityType> VANILLA_TO_IRRADIATED = new HashMap<>(); - - EntityType getNormalVariant(); - - default void readFromVanilla(Animal animal) {} - - default void writeToVanilla(Animal animal) {} - - boolean isConverting(); - - void setConverting(); - - void setConversionTime(int conversionTime); - - int getConversionTime(); - - default void startConverting(int conversionTime) { - Animal animal = (Animal) this; - - setConversionTime(conversionTime); - setConverting(); - animal.removeEffect(MobEffects.WEAKNESS); - animal.addEffect(new MobEffectInstance(MobEffects.DAMAGE_BOOST, conversionTime, Math.min(animal.level().getDifficulty().getId() -1, 0))); - animal.level().broadcastEntityEvent(animal, EntityEvent.ZOMBIE_CONVERTING); - } - - default void finishConversion(ServerLevel level) { - Animal irradifiedAnimal = (Animal) this; - Animal vanillaAnimal = irradifiedAnimal.convertTo(getNormalVariant(), false); - - if (vanillaAnimal != null) { - vanillaAnimal.finalizeSpawn(level, level.getCurrentDifficultyAt(vanillaAnimal.blockPosition()), MobSpawnType.CONVERSION, null, null); - writeToVanilla(vanillaAnimal); - vanillaAnimal.addEffect(new MobEffectInstance(MobEffects.CONFUSION, 200, 0)); - - if (!irradifiedAnimal.isSilent()) { - level.levelEvent(null, LevelEvent.SOUND_ZOMBIE_CONVERTED, irradifiedAnimal.blockPosition(), 0); - } - - ForgeEventFactory.onLivingConvert(irradifiedAnimal, vanillaAnimal); - } - } - - default int getConversionProgress() { - int progress = 1; - Animal animal = (Animal) this; - - if (animal.getRandom().nextFloat() < 0.01F) { - int buffCount = 0; - BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); - - for (int x = (int) animal.getX() - 4; x < animal.getX() + 4 && buffCount < 14; ++x) { - for (int y = (int) animal.getY() - 4; y < animal.getY() + 4 && buffCount < 14; ++y) { - for (int z = (int) animal.getZ() - 4; z < animal.getZ() + 4 && buffCount < 14; ++z) { - BlockState state = animal.level().getBlockState(pos.set(x, y, z)); - - if (state.is(BlockTags.WOODEN_FENCES) || state.is(Blocks.HAY_BLOCK)) { - if (animal.getRandom().nextFloat() < 0.3F) - ++progress; - - ++buffCount; - } - } - } - } - } - - return progress; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/CatSitOnBlockGoal.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/CatSitOnBlockGoal.java index a5fa9852f..2da168ecf 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/CatSitOnBlockGoal.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/CatSitOnBlockGoal.java @@ -38,7 +38,6 @@ public void tick() { this.cat.setInSittingPose(this.isReachedTarget()); } - @SuppressWarnings("null") protected boolean isValidTarget(LevelReader level, BlockPos pos) { if (!level.isEmptyBlock(pos.above())) { return false; diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCat.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCat.java index 12cf7c258..bdda3854a 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCat.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCat.java @@ -38,8 +38,6 @@ import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; import net.minecraft.world.level.storage.loot.parameters.LootContextParams; import net.minecraft.world.phys.AABB; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.AnimalUtil; import org.jetbrains.annotations.Nullable; import javax.annotation.ParametersAreNonnullByDefault; @@ -58,6 +56,7 @@ public class IrradiatedCat extends TamableAnimal { private static final Ingredient TEMPT_INGREDIENT; private static final EntityDataAccessor IS_LYING; private static final EntityDataAccessor RELAX_STATE_ONE; + private static final EntityDataAccessor DATA_COLLAR_COLOR; private CatAvoidEntityGoal avoidPlayersGoal; @Nullable private TemptGoal temptGoal; @@ -72,7 +71,6 @@ public IrradiatedCat(EntityType entityType, Level level super(entityType, level); } - @SuppressWarnings({ "rawtypes", "unchecked" }) protected void registerGoals() { this.temptGoal = new CatTemptGoal(this, 0.6, TEMPT_INGREDIENT, true); this.goalSelector.addGoal(1, new FloatGoal(this)); @@ -108,18 +106,33 @@ public boolean isRelaxStateOne() { return this.entityData.get(RELAX_STATE_ONE); } + public DyeColor getCollarColor() { + return DyeColor.byId(this.entityData.get(DATA_COLLAR_COLOR)); + } + + public void setCollarColor(DyeColor color) { + this.entityData.set(DATA_COLLAR_COLOR, color.getId()); + } + protected void defineSynchedData() { super.defineSynchedData(); this.entityData.define(IS_LYING, false); this.entityData.define(RELAX_STATE_ONE, false); + this.entityData.define(DATA_COLLAR_COLOR, DyeColor.RED.getId()); } public void addAdditionalSaveData(CompoundTag compound) { super.addAdditionalSaveData(compound); + compound.putByte("CollarColor", (byte)this.getCollarColor().getId()); } public void readAdditionalSaveData(CompoundTag compound) { super.readAdditionalSaveData(compound); + + if (compound.contains("CollarColor", 99)) { + this.setCollarColor(DyeColor.byId(compound.getInt("CollarColor"))); + } + } public void customServerAiStep() { @@ -253,6 +266,11 @@ public AgeableMob getBreedOffspring(ServerLevel level, AgeableMob otherParent) { if (this.isTame()) { cat.setOwnerUUID(this.getOwnerUUID()); cat.setTame(true); + if (this.random.nextBoolean()) { + cat.setCollarColor(this.getCollarColor()); + } else { + cat.setCollarColor(cat2.getCollarColor()); + } } } @@ -270,7 +288,6 @@ public boolean canMate(Animal otherAnimal) { } } - @SuppressWarnings("null") public SpawnGroupData finalizeSpawn(ServerLevelAccessor level, DifficultyInstance difficulty, MobSpawnType reason, @Nullable SpawnGroupData spawnData, @Nullable CompoundTag dataTag) { spawnData = super.finalizeSpawn(level, difficulty, reason, spawnData, dataTag); boolean bl = level.getMoonBrightness() > 0.9F; @@ -282,7 +299,6 @@ public SpawnGroupData finalizeSpawn(ServerLevelAccessor level, DifficultyInstanc return spawnData; } - @SuppressWarnings("null") public InteractionResult mobInteract(Player player, InteractionHand hand) { ItemStack itemStack = player.getItemInHand(hand); Item item = itemStack.getItem(); @@ -296,21 +312,44 @@ public InteractionResult mobInteract(Player player, InteractionHand hand) { InteractionResult interactionResult; if (this.isTame()) { if (this.isOwnedBy(player)) { - if (item.isEdible() && this.isFood(itemStack) && this.getHealth() < this.getMaxHealth()) { - this.usePlayerItem(player, hand, itemStack); - this.heal((float)item.getFoodProperties().getNutrition()); - return InteractionResult.CONSUME; + if (!(item instanceof DyeItem)) { + if (item.isEdible() && this.isFood(itemStack) && this.getHealth() < this.getMaxHealth()) { + this.usePlayerItem(player, hand, itemStack); + this.heal((float)item.getFoodProperties().getNutrition()); + return InteractionResult.CONSUME; + } + + interactionResult = super.mobInteract(player, hand); + if (!interactionResult.consumesAction() || this.isBaby()) { + this.setOrderedToSit(!this.isOrderedToSit()); + } + + return interactionResult; } - interactionResult = super.mobInteract(player, hand); - if (!interactionResult.consumesAction() || this.isBaby()) { - this.setOrderedToSit(!this.isOrderedToSit()); - } + DyeColor dyeColor = ((DyeItem)item).getDyeColor(); + if (dyeColor != this.getCollarColor()) { + this.setCollarColor(dyeColor); + if (!player.getAbilities().instabuild) { + itemStack.shrink(1); + } - return interactionResult; + this.setPersistenceRequired(); + return InteractionResult.CONSUME; + } } - } else if (itemStack.is(CNItems.YELLOWCAKE.get())) { - return AnimalUtil.blockTamingWip(player, this.level()); + } else if (this.isFood(itemStack)) { + this.usePlayerItem(player, hand, itemStack); + if (this.random.nextInt(3) == 0) { + this.tame(player); + this.setOrderedToSit(true); + this.level().broadcastEntityEvent(this, (byte)7); + } else { + this.level().broadcastEntityEvent(this, (byte)6); + } + + this.setPersistenceRequired(); + return InteractionResult.CONSUME; } interactionResult = super.mobInteract(player, hand); @@ -351,9 +390,10 @@ public boolean isSteppingCarefully() { } static { - TEMPT_INGREDIENT = Ingredient.of(new ItemLike[]{Items.COD, Items.SALMON, CNItems.YELLOWCAKE}); + TEMPT_INGREDIENT = Ingredient.of(new ItemLike[]{Items.COD, Items.SALMON}); IS_LYING = SynchedEntityData.defineId(IrradiatedCat.class, EntityDataSerializers.BOOLEAN); RELAX_STATE_ONE = SynchedEntityData.defineId(IrradiatedCat.class, EntityDataSerializers.BOOLEAN); + DATA_COLLAR_COLOR = SynchedEntityData.defineId(IrradiatedCat.class, EntityDataSerializers.INT); } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCatCollarLayer.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCatCollarLayer.java new file mode 100644 index 000000000..83d842f8c --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cat/IrradiatedCatCollarLayer.java @@ -0,0 +1,32 @@ +package net.nuclearteam.createnuclear.content.contraptions.irradiated.cat; + +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.model.geom.EntityModelSet; +import net.minecraft.client.model.geom.ModelLayers; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.RenderLayerParent; +import net.minecraft.client.renderer.entity.layers.RenderLayer; +import net.minecraft.resources.ResourceLocation; + +import javax.annotation.ParametersAreNonnullByDefault; + +@SuppressWarnings("unused") +@ParametersAreNonnullByDefault +public class IrradiatedCatCollarLayer extends RenderLayer> { + private static final ResourceLocation CAT_COLLAR_LOCATION = new ResourceLocation("textures/entity/cat/cat_collar.png"); + private final IrradiatedCatModel irrigatedCatCollarModel; + + public IrradiatedCatCollarLayer(RenderLayerParent> render, EntityModelSet modelSet) { + super(render); + this.irrigatedCatCollarModel = new IrradiatedCatModel<>(modelSet.bakeLayer(ModelLayers.CAT_COLLAR)); + } + + + @Override + public void render(PoseStack matrixStack, MultiBufferSource buffer, int packedLight, IrradiatedCat livingEntity, float limbSwing, float limbSwingAmount, float partialTick, float ageInTicks, float netHeadYaw, float headPitch) { + if (livingEntity.isTame()) { + float[] fs = livingEntity.getCollarColor().getTextureDiffuseColors(); + coloredCutoutModelCopyLayerRender(this.getParentModel(), this.irrigatedCatCollarModel, CAT_COLLAR_LOCATION, matrixStack, buffer, packedLight, livingEntity, limbSwing, limbSwingAmount, partialTick, ageInTicks, netHeadYaw, headPitch, fs[0], fs[1], fs[2]); + } + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/chicken/IrradiatedChicken.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/chicken/IrradiatedChicken.java index cf86a9d26..1fa24f4b0 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/chicken/IrradiatedChicken.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/chicken/IrradiatedChicken.java @@ -3,23 +3,16 @@ import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; -import net.minecraft.network.syncher.EntityDataAccessor; -import net.minecraft.network.syncher.EntityDataSerializers; -import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvents; import net.minecraft.util.Mth; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResult; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.entity.*; import net.minecraft.world.entity.ai.attributes.AttributeSupplier; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.ai.goal.*; import net.minecraft.world.entity.animal.Animal; -import net.minecraft.world.entity.animal.Chicken; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; @@ -30,9 +23,6 @@ import net.minecraft.world.level.pathfinder.BlockPathTypes; import net.minecraft.world.phys.Vec3; import net.nuclearteam.createnuclear.CNEntityType; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.AnimalUtil; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.IrradiatedAnimal; import org.jetbrains.annotations.Nullable; import javax.annotation.ParametersAreNonnullByDefault; @@ -40,11 +30,10 @@ @MethodsReturnNonnullByDefault @ParametersAreNonnullByDefault @SuppressWarnings("unused") -public class IrradiatedChicken extends Animal implements IrradiatedAnimal { +public class IrradiatedChicken extends Animal { private static final Ingredient FOOD_ITEMS = Ingredient.of( Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, - Items.BEETROOT_SEEDS, Items.TORCHFLOWER_SEEDS, Items.PITCHER_POD, - CNItems.YELLOWCAKE + Items.BEETROOT_SEEDS, Items.TORCHFLOWER_SEEDS, Items.PITCHER_POD ); public float flap; public float flapSpeed; @@ -55,21 +44,12 @@ public class IrradiatedChicken extends Animal implements IrradiatedAnimal { public int eggTime; public boolean isChickenJockey; - private static final EntityDataAccessor DATA_CONVERTING_ID = SynchedEntityData.defineId(IrradiatedChicken.class, EntityDataSerializers.BOOLEAN); - private int conversionTime; - public IrradiatedChicken(EntityType entityType, Level level) { super(entityType, level); this.eggTime = this.random.nextInt(6000) + 6000; this.setPathfindingMalus(BlockPathTypes.WATER, 0.0F); } - @Override - protected void defineSynchedData() { - super.defineSynchedData(); - entityData.define(DATA_CONVERTING_ID, false); - } - @Override protected void registerGoals() { this.goalSelector.addGoal(0, new FloatGoal(this)); @@ -150,8 +130,7 @@ public IrradiatedChicken getBreedOffspring(ServerLevel level, AgeableMob otherPa @Override public boolean isFood(ItemStack stack) { - // Check if the stack is a valid Yellowcake or the base food - return AnimalUtil.isFood(stack, FOOD_ITEMS); + return FOOD_ITEMS.test(stack); } @Override @@ -167,8 +146,6 @@ public void readAdditionalSaveData(CompoundTag compound) { this.eggTime = compound.getInt("EggLayTime"); } - if (compound.contains("ConversionTime", Tag.TAG_ANY_NUMERIC) && compound.getInt("ConversionTime") > -1) - startConverting(compound.getInt("ConversionTime")); } @Override @@ -176,7 +153,6 @@ public void addAdditionalSaveData(CompoundTag compound) { super.addAdditionalSaveData(compound); compound.putBoolean("IsChickenJockey", this.isChickenJockey); compound.putInt("EggLayTime", this.eggTime); - compound.putInt("ConversionTime", isConverting() ? conversionTime : -1); } @Override @@ -205,41 +181,4 @@ public boolean isChickenJockey() { public void setChickenJockey(boolean isChickenJockey) { this.isChickenJockey = isChickenJockey; } - - @Override - public EntityType getNormalVariant() { - return EntityType.CHICKEN; - } - - @Override - public void readFromVanilla(Animal animal) { - if (animal instanceof Chicken chicken) - setChickenJockey(chicken.isChickenJockey()); - } - - @Override - public void writeToVanilla(Animal animal) { - if (animal instanceof Chicken chicken) - chicken.setChickenJockey(isChickenJockey()); - } - - @Override - public boolean isConverting() { - return getEntityData().get(DATA_CONVERTING_ID); - } - - @Override - public void setConverting() { - getEntityData().set(DATA_CONVERTING_ID, true); - } - - @Override - public void setConversionTime(int conversionTime) { - this.conversionTime = conversionTime; - } - - @Override - public int getConversionTime() { - return conversionTime; - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCow.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCow.java deleted file mode 100644 index b8a6c8782..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCow.java +++ /dev/null @@ -1,100 +0,0 @@ -package net.nuclearteam.createnuclear.content.contraptions.irradiated.cow; - -import net.minecraft.core.BlockPos; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundEvents; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.damagesource.DamageSource; -import net.minecraft.world.entity.*; -import net.minecraft.world.entity.ai.attributes.AttributeSupplier; -import net.minecraft.world.entity.ai.attributes.Attributes; -import net.minecraft.world.entity.ai.goal.*; -import net.minecraft.world.entity.animal.Animal; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.ItemUtils; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.CNEntityType; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.AnimalUtil; - -import javax.annotation.Nullable; - -public class IrradiatedCow extends Animal { - public IrradiatedCow(EntityType pEntityType, Level pLevel) { - super(pEntityType, pLevel); - } - - protected void registerGoals() { - this.goalSelector.addGoal(0, new FloatGoal(this)); - this.goalSelector.addGoal(1, new PanicGoal(this, 2.0D)); - this.goalSelector.addGoal(2, new BreedGoal(this, 1.0D)); - this.goalSelector.addGoal(3, new TemptGoal(this, 1.25D, Ingredient.of(Items.WHEAT), false)); - this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25D)); - this.goalSelector.addGoal(5, new WaterAvoidingRandomStrollGoal(this, 1.0D)); - this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); - this.goalSelector.addGoal(7, new RandomLookAroundGoal(this)); - } - - // Define the base food of the animal (e.g., Wheat for Cows) - private static final Ingredient FOOD_ITEMS = Ingredient.of(CNItems.YELLOWCAKE); - - @Override - public boolean isFood(ItemStack stack) { - // Check if the stack is a valid Yellowcake or the base food - return AnimalUtil.isFood(stack, FOOD_ITEMS); - } - - public static AttributeSupplier.Builder createAttributes() { - return Mob.createMobAttributes().add(Attributes.MAX_HEALTH, 10.0D).add(Attributes.MOVEMENT_SPEED, (double)0.2F); - } - - protected SoundEvent getAmbientSound() { - return SoundEvents.COW_AMBIENT; - } - - protected SoundEvent getHurtSound(DamageSource pDamageSource) { - return SoundEvents.COW_HURT; - } - - protected SoundEvent getDeathSound() { - return SoundEvents.COW_DEATH; - } - - protected void playStepSound(BlockPos pPos, BlockState pBlock) { - this.playSound(SoundEvents.COW_STEP, 0.15F, 1.0F); - } - - /** - * Returns the volume for the sounds this mob makes. - */ - protected float getSoundVolume() { - return 0.4F; - } - - public InteractionResult mobInteract(Player pPlayer, InteractionHand pHand) { - ItemStack itemstack = pPlayer.getItemInHand(pHand); - if (itemstack.is(Items.BUCKET) && !this.isBaby()) { - pPlayer.playSound(SoundEvents.COW_MILK, 1.0F, 1.0F); - ItemStack itemstack1 = ItemUtils.createFilledResult(itemstack, pPlayer, Items.MILK_BUCKET.getDefaultInstance()); - pPlayer.setItemInHand(pHand, itemstack1); - return InteractionResult.sidedSuccess(this.level().isClientSide); - } else { - return super.mobInteract(pPlayer, pHand); - } - } - - @Nullable - public IrradiatedCow getBreedOffspring(ServerLevel pLevel, AgeableMob pOtherParent) { - return CNEntityType.IRRADIATED_COW.create(pLevel); - } - - protected float getStandingEyeHeight(Pose pPose, EntityDimensions pSize) { - return this.isBaby() ? pSize.height * 0.95F : 1.3F; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowModel.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowModel.java deleted file mode 100644 index 1f1ba5062..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowModel.java +++ /dev/null @@ -1,109 +0,0 @@ -// Made with Blockbench 5.0.4 -// Exported for Minecraft version 1.17 or later with Mojang mappings -// Paste this class into your mod and generate all required imports -package net.nuclearteam.createnuclear.content.contraptions.irradiated.cow; - - -import com.google.common.collect.ImmutableList; -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import net.minecraft.client.model.AgeableListModel; -import net.minecraft.client.model.EntityModel; -import net.minecraft.client.model.QuadrupedModel; -import net.minecraft.client.model.geom.ModelPart; -import net.minecraft.client.model.geom.PartPose; -import net.minecraft.client.model.geom.builders.*; -import net.minecraft.util.Mth; - -public class IrradiatedCowModel extends AgeableListModel { - // This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor - private final ModelPart head; - private final ModelPart pustule; - private final ModelPart body; - private final ModelPart pustule3; - private final ModelPart legs; - private final ModelPart leg1; - private final ModelPart leg2; - private final ModelPart leg3; - private final ModelPart leg4; - private final ModelPart pustule2; - - public IrradiatedCowModel(ModelPart root) { - this.head = root.getChild("head"); - this.pustule = this.head.getChild("pustule"); - this.body = root.getChild("body"); - this.pustule3 = this.body.getChild("pustule3"); - this.legs = root.getChild("legs"); - this.leg1 = this.legs.getChild("leg1"); - this.leg2 = this.legs.getChild("leg2"); - this.leg3 = this.legs.getChild("leg3"); - this.leg4 = this.legs.getChild("leg4"); - this.pustule2 = this.leg4.getChild("pustule2"); - } - - public static LayerDefinition createBodyLayer() { - MeshDefinition meshdefinition = new MeshDefinition(); - PartDefinition partdefinition = meshdefinition.getRoot(); - - PartDefinition head = partdefinition.addOrReplaceChild("head", CubeListBuilder.create().texOffs(0, 0).addBox(-4.0F, -4.0F, -6.0F, 8.0F, 8.0F, 6.0F, new CubeDeformation(0.0F)) - .texOffs(22, 0).addBox(4.0F, -5.0F, -4.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)) - .texOffs(22, 0).addBox(-5.0F, -5.0F, -4.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 4.0F, -8.0F)); - - PartDefinition pustule = head.addOrReplaceChild("pustule", CubeListBuilder.create(), PartPose.offset(0.0F, 0.0F, 0.0F)); - - PartDefinition pustule_head_r1 = pustule.addOrReplaceChild("pustule_head_r1", CubeListBuilder.create().texOffs(54, 9).addBox(-1.1F, -0.8F, -0.6F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(3.4F, -4.0F, -1.0F, -0.2739F, 0.2947F, -0.0814F)); - - PartDefinition body = partdefinition.addOrReplaceChild("body", CubeListBuilder.create().texOffs(18, 4).addBox(-6.0F, -10.0F, -7.0F, 12.0F, 18.0F, 10.0F, new CubeDeformation(0.0F)) - .texOffs(52, 0).addBox(-2.0F, 2.0F, -8.0F, 4.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 5.0F, 2.0F, 1.5708F, 0.0F, 0.0F)); - - PartDefinition pustule3 = body.addOrReplaceChild("pustule3", CubeListBuilder.create(), PartPose.offsetAndRotation(1.5724F, 9.1193F, -7.1515F, 2.8289F, -0.5338F, 2.1369F)); - - PartDefinition pustule_back_r1 = pustule3.addOrReplaceChild("pustule_back_r1", CubeListBuilder.create().texOffs(54, 9).addBox(3.4F, 0.0F, -4.7F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(1.309F, -2.9436F, -13.0622F, 2.0131F, -0.1273F, -1.056F)); - - PartDefinition pustule_belly_r1 = pustule3.addOrReplaceChild("pustule_belly_r1", CubeListBuilder.create().texOffs(54, 9).addBox(-2.0F, -0.6F, 5.0F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, -2.0159F, 0.1667F, 2.0666F)); - - PartDefinition legs = partdefinition.addOrReplaceChild("legs", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F)); - - PartDefinition leg1 = legs.addOrReplaceChild("leg1", CubeListBuilder.create().texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-4.0F, -12.0F, 7.0F)); - - PartDefinition leg2 = legs.addOrReplaceChild("leg2", CubeListBuilder.create().texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(4.0F, -12.0F, 7.0F)); - - PartDefinition leg3 = legs.addOrReplaceChild("leg3", CubeListBuilder.create().texOffs(0, 16).addBox(-2.0F, 0.0F, -1.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-4.0F, -12.0F, -6.0F)); - - PartDefinition leg4 = legs.addOrReplaceChild("leg4", CubeListBuilder.create().texOffs(0, 16).addBox(-2.0F, 0.0F, -1.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(4.0F, -12.0F, -6.0F)); - - PartDefinition pustule2 = leg4.addOrReplaceChild("pustule2", CubeListBuilder.create(), PartPose.offsetAndRotation(0.4249F, 7.2997F, 2.3458F, -2.5307F, 0.0F, 0.0F)); - - PartDefinition pustule_leg_r1 = pustule2.addOrReplaceChild("pustule_leg_r1", CubeListBuilder.create().texOffs(54, 9).addBox(-1.0F, 0.0F, -1.0F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(2.1064F, 2.3852F, -0.6084F, 0.1272F, 0.3997F, 1.5682F)); - - return LayerDefinition.create(meshdefinition, 64, 32); - } - - @Override - public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { - this.head.xRot = headPitch * ((float)Math.PI / 180F); - this.head.yRot = netHeadYaw * ((float)Math.PI / 180F); - this.leg3.xRot = Mth.cos(limbSwing * 0.6662F) * 1.4F * limbSwingAmount; - this.leg4.xRot = Mth.cos(limbSwing * 0.6662F + (float)Math.PI) * 1.4F * limbSwingAmount; - this.leg1.xRot = Mth.cos(limbSwing * 0.6662F + (float)Math.PI) * 1.4F * limbSwingAmount; - this.leg2.xRot = Mth.cos(limbSwing * 0.6662F) * 1.4F * limbSwingAmount; - } - - @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { - head.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - body.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - legs.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - } - - @Override - protected Iterable headParts() { - return ImmutableList.of(this.head); - } - - @Override - protected Iterable bodyParts() { - return ImmutableList.of(this.body, this.leg1, this.leg2, this.leg3, this.leg4); - } - -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowRenderer.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowRenderer.java deleted file mode 100644 index a82c603bf..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/cow/IrradiatedCowRenderer.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.nuclearteam.createnuclear.content.contraptions.irradiated.cow; - -import net.minecraft.client.renderer.entity.EntityRendererProvider; -import net.minecraft.client.renderer.entity.MobRenderer; -import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.CNModelLayers; - -@OnlyIn(Dist.CLIENT) -public class IrradiatedCowRenderer extends MobRenderer> { - private static final ResourceLocation COW_LOCATION = CreateNuclear.asResource("textures/entity/irradiated_cow.png"); - - public IrradiatedCowRenderer(EntityRendererProvider.Context context) { - super(context, new IrradiatedCowModel<>(context.bakeLayer(CNModelLayers.IRRADIATED_COW)), 0.7f); - } - - /** - * Returns the location of an entity's texture. - */ - public ResourceLocation getTextureLocation(IrradiatedCow pEntity) { - return COW_LOCATION; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWoldCollarLayer.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWoldCollarLayer.java new file mode 100644 index 000000000..78e3f5990 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWoldCollarLayer.java @@ -0,0 +1,23 @@ +package net.nuclearteam.createnuclear.content.contraptions.irradiated.wolf; + +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.RenderLayerParent; +import net.minecraft.client.renderer.entity.layers.RenderLayer; +import net.minecraft.resources.ResourceLocation; + +import javax.annotation.ParametersAreNonnullByDefault; + +@ParametersAreNonnullByDefault +@SuppressWarnings("unused") +public class IrradiatedWoldCollarLayer extends RenderLayer> { + private static final ResourceLocation WOLF_COLLAR_LOCATION = new ResourceLocation("textures/entity/wolf/wolf_collar.png"); + + public IrradiatedWoldCollarLayer(RenderLayerParent> renderer) { + super(renderer); + } + + @Override + public void render(PoseStack matrixStack, MultiBufferSource buffer, int packedLight, IrradiatedWolf livingEntity, float limbSwing, float limbSwingAmount, float partialTick, float ageInTicks, float netHeadYaw, float headPitch) { + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWolf.java b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWolf.java index e89345851..1f62b103d 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWolf.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/contraptions/irradiated/wolf/IrradiatedWolf.java @@ -35,7 +35,7 @@ import net.minecraft.world.entity.projectile.AbstractArrow; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.item.Items; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; import net.minecraft.world.level.block.state.BlockState; @@ -44,7 +44,6 @@ import net.minecraft.world.phys.Vec3; import net.nuclearteam.createnuclear.CNEntityType; import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.AnimalUtil; import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; @@ -301,7 +300,7 @@ public InteractionResult mobInteract(Player player, InteractionHand hand) { ItemStack itemStack = player.getItemInHand(hand); Item item = itemStack.getItem(); if (this.level().isClientSide) { - boolean bl = this.isOwnedBy(player) || this.isTame() || this.isFood(itemStack) && !this.isTame() && !this.isAngry(); + boolean bl = this.isOwnedBy(player) || this.isTame() || itemStack.is(Items.BONE) && !this.isTame() && !this.isAngry(); return bl ? InteractionResult.CONSUME : InteractionResult.PASS; } else { { @@ -314,8 +313,6 @@ public InteractionResult mobInteract(Player player, InteractionHand hand) { this.heal((float) item.getFoodProperties().getNutrition()); return InteractionResult.SUCCESS; } - } else if (this.isFood(itemStack)) { - return AnimalUtil.blockTamingWip(player, this.level()); } return super.mobInteract(player, hand); @@ -343,13 +340,10 @@ public float getTailAngle() { return this.isTame() ? (0.55F - (this.getMaxHealth() - this.getHealth()) * 0.02F) * 3.1415927F : 0.62831855F; } } - // Define the base food of the animal (e.g., Wheat for Cows) - private static final Ingredient FOOD_ITEMS = Ingredient.of(CNItems.YELLOWCAKE); - @Override public boolean isFood(ItemStack stack) { - // Check if the stack is a valid Yellowcake or the base food - return AnimalUtil.isFood(stack, FOOD_ITEMS); + //Item item = stack.getItem(); + return stack.is(CNItems.YELLOWCAKE.asItem());//stack.is(CNItems.URANIUM_POWDER.get()); //item.isEdible() && item.getFoodProperties().isMeat(); } public int getMaxSpawnClusterSize() { diff --git a/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PaletteBlockPattern.java b/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PaletteBlockPattern.java index 4359b8dcc..f06ddf5f1 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PaletteBlockPattern.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PaletteBlockPattern.java @@ -18,7 +18,6 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraft.core.Direction.Axis; -import net.minecraftforge.client.model.generators.BlockModelBuilder; import net.minecraftforge.client.model.generators.ConfiguredModel; import net.nuclearteam.createnuclear.CreateNuclear; @@ -141,24 +140,16 @@ private PaletteBlockPattern connectedTextures(Function { - BlockModelBuilder builder = prov.models() - .cubeAll(createName(variant), all); - if (isTranslucent) builder.renderType("translucent"); - prov.simpleBlock(ctx.get(), builder); - }; + return (ctx, prov) -> prov.simpleBlock(ctx.get(), prov.models() + .cubeAll(createName(variant), all)); } public IBlockStateProvider cubeBottomTop(String variant) { ResourceLocation side = toLocation(variant, textures[0]); ResourceLocation bottom = toLocation(variant, textures[1]); ResourceLocation top = toLocation(variant, textures[2]); - return (ctx, prov) -> { - BlockModelBuilder builder = prov.models() - .cubeBottomTop(createName(variant), side, bottom, top); - if (isTranslucent) builder.renderType("translucent"); - prov.simpleBlock(ctx.get(), builder); - }; + return (ctx, prov) -> prov.simpleBlock(ctx.get(), prov.models() + .cubeBottomTop(createName(variant), side, bottom, top)); } public IBlockStateProvider pillar(String variant) { @@ -168,19 +159,15 @@ public IBlockStateProvider pillar(String variant) { return (ctx, prov) -> prov.getVariantBuilder(ctx.getEntry()) .forAllStatesExcept(state -> { Axis axis = state.getValue(BlockStateProperties.AXIS); - BlockModelBuilder builder; - if (axis == Axis.Y) { - builder = prov.models().cubeColumn(createName(variant), side, end); - if (isTranslucent) builder.renderType("translucent"); + if (axis == Axis.Y) return ConfiguredModel.builder() - .modelFile(builder) + .modelFile(prov.models() + .cubeColumn(createName(variant), side, end)) .uvLock(false) .build(); - } - builder = prov.models().cubeColumnHorizontal(createName(variant) + "_horizontal", side, end); - if (isTranslucent) builder.renderType("translucent"); return ConfiguredModel.builder() - .modelFile(builder) + .modelFile(prov.models() + .cubeColumnHorizontal(createName(variant) + "_horizontal", side, end)) .uvLock(false) .rotationX(90) .rotationY(axis == Axis.X ? 90 : 0) @@ -192,12 +179,8 @@ public IBlockStateProvider pillar(String variant) { public IBlockStateProvider cubeColumn(String variant) { ResourceLocation side = toLocation(variant, textures[0]); ResourceLocation end = toLocation(variant, textures[1]); - return (ctx, prov) -> { - BlockModelBuilder builder = prov.models() - .cubeColumn(createName(variant), side, end); - if (isTranslucent) builder.renderType("translucent"); - prov.simpleBlock(ctx.get(), builder); - }; + return (ctx, prov) -> prov.simpleBlock(ctx.get(), prov.models() + .cubeColumn(createName(variant), side, end)); } // Utility diff --git a/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PalettesVariantEntry.java b/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PalettesVariantEntry.java index 2db86abb5..9f2bd9aa3 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PalettesVariantEntry.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/decoration/palettes/PalettesVariantEntry.java @@ -37,9 +37,10 @@ public PalettesVariantEntry(String name, CNPaletteStoneTypes paletteStoneVariant .transform(pickaxeOnly()) .blockstate(pattern.getBlockStateGenerator() .apply(pattern) - .apply(name)::accept); - ItemBuilder> itemBuilder = builder - .item(); + .apply(name)::accept + ); + ItemBuilder> itemBuilder = + builder.item(); TagKey[] blockTags = pattern.getBlockTags(); if (blockTags != null) @@ -50,8 +51,10 @@ public PalettesVariantEntry(String name, CNPaletteStoneTypes paletteStoneVariant itemBuilder.tag(paletteStoneVariants.materialTag); + if (pattern.isTranslucent()) + builder.addLayer(() -> RenderType::translucent); pattern.createCTBehaviour(name) - .ifPresent(b -> builder.onRegister(CreateRegistrate.connectedTextures(b))); + .ifPresent(b -> builder.onRegister(connectedTextures(b))); builder.recipe((c, p) -> { p.stonecutting(DataIngredient.tag(paletteStoneVariants.materialTag), RecipeCategory.BUILDING_BLOCKS, c); @@ -68,8 +71,7 @@ public PalettesVariantEntry(String name, CNPaletteStoneTypes paletteStoneVariant } REGISTRATE.addDataGenerator(ProviderType.RECIPE, - p -> p.stonecutting(DataIngredient.tag(paletteStoneVariants.materialTag), - RecipeCategory.BUILDING_BLOCKS, + p -> p.stonecutting(DataIngredient.tag(paletteStoneVariants.materialTag), RecipeCategory.BUILDING_BLOCKS, baseBlock)); REGISTRATE.addDataGenerator(ProviderType.ITEM_TAGS, p -> p.addTag(paletteStoneVariants.materialTag) .add(baseBlock.get() diff --git a/src/main/java/net/nuclearteam/createnuclear/content/effects/IodineEffect.java b/src/main/java/net/nuclearteam/createnuclear/content/effects/IodineEffect.java deleted file mode 100644 index 71fb76735..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/effects/IodineEffect.java +++ /dev/null @@ -1,27 +0,0 @@ -package net.nuclearteam.createnuclear.content.effects; - -import net.minecraft.world.effect.MobEffect; -import net.minecraft.world.effect.MobEffectCategory; -import net.minecraft.world.entity.ai.attributes.AttributeModifier; -import net.nuclearteam.createnuclear.CNAttributes; - -import java.util.UUID; - -public class IodineEffect extends MobEffect { - public static final UUID IODINE_UUID = UUID.fromString("123e4567-e89b-12d3-a456-426614174000"); - - protected IodineEffect(MobEffectCategory pCategory, int pColor) { - super(pCategory, pColor); - - this.addAttributeModifier(CNAttributes.IRRADIATED_RESISTANCE.get(), IODINE_UUID.toString(), 1D, AttributeModifier.Operation.ADDITION); - } - - public IodineEffect() { - this(MobEffectCategory.BENEFICIAL, 7328217); - } - - @Override - public boolean isDurationEffectTick(int pDuration, int pAmplifier) { - return true; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/effects/RadiationEffect.java b/src/main/java/net/nuclearteam/createnuclear/content/effects/RadiationEffect.java new file mode 100644 index 000000000..e0eee6b65 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/effects/RadiationEffect.java @@ -0,0 +1,83 @@ +package net.nuclearteam.createnuclear.content.effects; + +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectCategory; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.item.ItemStack; +import net.nuclearteam.createnuclear.CNTags; +import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem; +import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.ai.attributes.AttributeModifier; + +public class RadiationEffect extends MobEffect { + + /** + * Constructs the RadiationEffect with harmful category and color. + * Also applies attribute modifiers to reduce speed, attack damage, and attack speed. + */ + public RadiationEffect() { + super(MobEffectCategory.HARMFUL, 15453236); // Custom color (hex value) + + // Reduces movement speed by 20% + this.addAttributeModifier(Attributes.MOVEMENT_SPEED, + "91AEAA56-376B-4498-935B-2F7F68070635", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); + + // Reduces attack damage by 20% + this.addAttributeModifier(Attributes.ATTACK_DAMAGE, + "648D7064-6A60-4F59-8ABE-C2C23A6DD7A9", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); + + // Reduces attack speed by 20% + this.addAttributeModifier(Attributes.ATTACK_SPEED, + "55FCED67-E92A-486E-9800-B47F202C4386", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); + } + + /** + * Determines if the effect should be applied this tick. + * Returning true causes the effect to apply every tick. + * + * @param duration The remaining duration of the effect. + * @param amplifier The strength (level) of the effect. + * @return true if the effect should apply on this tick. + */ + @Override + public boolean isDurationEffectTick(int duration, int amplifier) { + return true; + } + + /** + * Applies the radiation effect to the entity. + * - Does nothing if the entity is immune via tag. + * - Skips damage if the entity wears any anti-radiation armor. + * - Otherwise, applies magic damage based on the amplifier. + * + * @param livingEntity The affected living entity. + * @param amplifier The strength (level) of the effect. + */ + @Override + public void applyEffectTick(LivingEntity livingEntity, int amplifier) { + // If the entity is immune to radiation, remove the effect + if (livingEntity.getType().is(CNTags.CNEntityTags.IRRADIATED_IMMUNE.tag)) { + livingEntity.removeEffect(this); + return; + } + + // Check if the entity is wearing any anti-radiation armor + boolean isWearingAntiRadiationArmor = false; + for (ItemStack armor : livingEntity.getArmorSlots()) { + if (AntiRadiationArmorItem.Armor.isArmored(armor)) { + isWearingAntiRadiationArmor = true; + break; + } + } + + // If protected by armor, do not apply damage + if (isWearingAntiRadiationArmor) { + return; + + } + + // Apply radiation damage (magic type), scaled by amplifier + int damage = 1 << amplifier; + livingEntity.hurt(livingEntity.damageSources().magic(), damage); + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/effects/VicinityEffect.java b/src/main/java/net/nuclearteam/createnuclear/content/effects/VicinityEffect.java deleted file mode 100644 index 9b5590b01..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/effects/VicinityEffect.java +++ /dev/null @@ -1,64 +0,0 @@ -package net.nuclearteam.createnuclear.content.effects; - -import net.minecraft.world.effect.MobEffect; -import net.minecraft.world.effect.MobEffectCategory; -import net.minecraft.world.effect.MobEffectInstance; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.LivingEntity; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.UUID; -import java.util.function.*; - -public abstract class VicinityEffect extends MobEffect { - private final UnaryOperator areaSize; - private final Predicate filter; - - // Stores the GameTime tick when the cooldown expires for each entity - private final Map cooldowns = new HashMap<>(); - - protected VicinityEffect(MobEffectCategory category, int color, UnaryOperator areaSize, Predicate filter, Consumer timer) { - super(category, color); - - this.areaSize = areaSize; - this.filter = filter; - } - - @Override - public void applyEffectTick(LivingEntity entity, int amplifier) { - long currentTime = entity.level().getGameTime(); - - List nearbyEntities = entity.level().getEntities( - entity, - entity.getBoundingBox().inflate(areaSize.apply(amplifier)), - e -> e instanceof LivingEntity target && filter.test(target) - ); - - for (Entity nearbyEntity : nearbyEntities) { - LivingEntity nearby = (LivingEntity) nearbyEntity; - UUID entityUuid = nearby.getUUID(); - - // Check if the cooldown has expired - if (currentTime >= cooldowns.getOrDefault(entityUuid, 0L)) { - onContaminate(nearby); - - // Set a 100-tick (5 seconds) cooldown before refreshing the effect again - cooldowns.put(entityUuid, currentTime + 100); - } - } - } - - /** - * Called for each eligible nearby entity once its cooldown expires. Each subclass - * decides how it actually delivers the effect (e.g. RadiationEffect feeds the dose - * into RadiationCapability rather than adding a MobEffect directly). - */ - protected abstract void onContaminate(LivingEntity nearby); - - @Override - public boolean isDurationEffectTick(int duration, int amplifier) { - return duration % 5 == 0; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/enriching/campfire/EnrichingCampfireBlock.java b/src/main/java/net/nuclearteam/createnuclear/content/enriching/campfire/EnrichingCampfireBlock.java index a64993350..1b210938c 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/enriching/campfire/EnrichingCampfireBlock.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/enriching/campfire/EnrichingCampfireBlock.java @@ -10,6 +10,7 @@ import net.minecraft.util.RandomSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; +import net.minecraft.world.effect.MobEffectInstance; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; @@ -36,7 +37,7 @@ import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; import net.nuclearteam.createnuclear.CNBlockEntityTypes; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; +import net.nuclearteam.createnuclear.CNEffects; import org.jetbrains.annotations.Nullable; import javax.annotation.ParametersAreNonnullByDefault; @@ -45,8 +46,6 @@ @ParametersAreNonnullByDefault @SuppressWarnings({"deprecation", "unused"}) public class EnrichingCampfireBlock extends BaseEntityBlock implements SimpleWaterloggedBlock, IBE { - private static final double CAMPFIRE_DOSE = 5.0D; - protected static final VoxelShape SHAPE = Block.box(0.0, 0.0, 0.0, 16.0, 7.0, 16.0); public static final BooleanProperty LIT = BlockStateProperties.LIT; public static final BooleanProperty WATERLOGGED = BlockStateProperties.WATERLOGGED; @@ -66,8 +65,8 @@ public InteractionResult use(BlockState state, Level level, BlockPos pos, Player @Override public void entityInside(BlockState state, Level level, BlockPos pos, Entity entity) { - if (state.getValue(LIT) && entity instanceof LivingEntity livingEntity && !EnchantmentHelper.hasFrostWalker(livingEntity)) { - RadiationCapability.applyContagion(livingEntity, CAMPFIRE_DOSE, 100); + if (state.getValue(LIT) && entity instanceof LivingEntity && !EnchantmentHelper.hasFrostWalker((LivingEntity)entity)) { + ((LivingEntity) entity).addEffect(new MobEffectInstance(CNEffects.RADIATION.get(), 100, 0)); } super.entityInside(state, level, pos, entity); } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/enriching/fire/EnrichingFireBlock.java b/src/main/java/net/nuclearteam/createnuclear/content/enriching/fire/EnrichingFireBlock.java index afd2c89a4..94e27c612 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/enriching/fire/EnrichingFireBlock.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/enriching/fire/EnrichingFireBlock.java @@ -4,7 +4,6 @@ import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.LevelAccessor; import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.BaseFireBlock; @@ -36,24 +35,9 @@ public BlockState updateShape(BlockState pState, Direction pFacing, BlockState p @Override public boolean canSurvive(BlockState state, LevelReader worldIn, BlockPos pos) { - BlockPos blockpos = pos.below(); - return worldIn.getBlockState(blockpos).isFaceSturdy(worldIn, blockpos, Direction.UP) || this.isValidFireLocation(worldIn, pos); + return EnrichingFireBlock.canSurviveOnBlock(worldIn.getBlockState(pos.below())); } - private boolean isValidFireLocation(BlockGetter pLevel, BlockPos pPos) { - for(Direction direction : Direction.values()) { - if (this.canCatchFire(pLevel, pPos.relative(direction), direction.getOpposite())) { - return true; - } - } - - return false; - } - - public boolean canCatchFire(BlockGetter world, BlockPos pos, Direction face) { - return world.getBlockState(pos).isFlammable(world, pos, face); - } - @Override protected boolean canBurn(BlockState p_49284_) { return true; diff --git a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorClientExtensions.java b/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorClientExtensions.java deleted file mode 100644 index 765ba8b24..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorClientExtensions.java +++ /dev/null @@ -1,32 +0,0 @@ -package net.nuclearteam.createnuclear.content.equipment.armor; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.model.HumanoidModel; -import net.minecraft.client.model.geom.EntityModelSet; -import net.minecraft.client.model.geom.ModelPart; -import net.minecraft.world.entity.EquipmentSlot; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.item.ItemStack; -import net.minecraftforge.client.extensions.common.IClientItemExtensions; -import net.nuclearteam.createnuclear.content.contraptions.irradiated.CNModelLayers; -import org.jetbrains.annotations.NotNull; - -public final class AntiRadiationArmorClientExtensions implements IClientItemExtensions { - private AntiRadiationArmorModel model; - - @Override - public @NotNull HumanoidModel getHumanoidArmorModel(LivingEntity livingEntity, ItemStack itemStack, EquipmentSlot equipmentSlot, HumanoidModel original) { - if (this.model == null) { - EntityModelSet entityModelSet = Minecraft.getInstance().getEntityModels(); - ModelPart root = entityModelSet.bakeLayer(CNModelLayers.ANTI_IRRADIATION_ARMOR); - this.model = new AntiRadiationArmorModel(root); - } - - // Forge copies the body pose + standard part visibility from `original` onto the - // model after this returns, but it can't tell LEGS from FEET (both make the vanilla - // legs visible) and knows nothing about our custom boot parts. We pass the slot so - // renderToBuffer can show legs for leggings vs. only boots for the FEET slot. - this.model.currentSlot = equipmentSlot; - return this.model; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorItem.java b/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorItem.java index 6b8238245..7a88940b1 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorItem.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorItem.java @@ -1,126 +1,316 @@ package net.nuclearteam.createnuclear.content.equipment.armor; -import com.google.common.collect.ImmutableMultimap; -import com.google.common.collect.Multimap; -import net.minecraft.Util; -import net.minecraft.world.entity.*; -import net.minecraft.world.entity.ai.attributes.Attribute; -import net.minecraft.world.entity.ai.attributes.AttributeModifier; -import net.minecraft.world.entity.player.Player; +import com.tterrag.registrate.util.entry.ItemEntry; +import net.minecraft.tags.TagKey; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.*; -import net.minecraft.world.level.Level; -import net.minecraftforge.client.extensions.common.IClientItemExtensions; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; - -import net.nuclearteam.createnuclear.CNAttributes; import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.foundation.utility.ClothTagHelper; +import net.nuclearteam.createnuclear.CNTags.CNItemTags; +import net.nuclearteam.createnuclear.CreateNuclear; import java.util.*; -import java.util.function.Consumer; +import java.util.function.Function; -public abstract class AntiRadiationArmorItem extends ArmorItem { - public static final double RADIATION_VALUE = 0.25; - protected final DyeColor color; +@SuppressWarnings("unused") +public class AntiRadiationArmorItem { - public AntiRadiationArmorItem(ArmorMaterials materials, Type type, Properties properties, DyeColor color) { - super(materials, type, properties); - this.color = color; - } + public static final ArmorItem.Type HELMET = ArmorItem.Type.HELMET; + public static final ArmorItem.Type CHESTPLATE = ArmorItem.Type.CHESTPLATE; + public static final ArmorItem.Type LEGGINGS = ArmorItem.Type.LEGGINGS; + public static final ArmorItem.Type BOOTS = ArmorItem.Type.BOOTS; + public static final ArmorMaterial ARMOR_MATERIAL = ArmorMaterials.ANTI_RADIATION_SUIT; - private static final EnumMap ARMOR_MODIFIER_UUID_PER_TYPE = Util.make(new EnumMap<>(ArmorItem.Type.class), (p_266744_) -> { - p_266744_.put(ArmorItem.Type.BOOTS, UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B")); - p_266744_.put(ArmorItem.Type.LEGGINGS, UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D")); - p_266744_.put(ArmorItem.Type.CHESTPLATE, UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E")); - p_266744_.put(ArmorItem.Type.HELMET, UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150")); - }); - - private static Multimap irradiatedArmorAttribute(Multimap map, ArmorItem.Type type) { - UUID uuid = ARMOR_MODIFIER_UUID_PER_TYPE.get(type); - ImmutableMultimap.Builder builder = ImmutableMultimap.builder(); - builder.putAll(map); - // Use ADDITION so pieces add up to a resistance fraction (e.g. 0.25 per piece -> full set = 1.0) - builder.put(CNAttributes.IRRADIATED_RESISTANCE.get(), new AttributeModifier(uuid, "Armor Resistance Irradiation", RADIATION_VALUE, AttributeModifier.Operation.ADDITION)); - - return builder.build(); - } - // Tells the game where to find the armor's PNG texture - @Override - public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { - return ClothTagHelper.getArmorTexturePath(stack, "anti_radiation_suit.png"); - } + public static class Helmet extends ArmorItem { + protected final DyeColor color; + public Helmet(Properties properties, DyeColor color) { + super(ARMOR_MATERIAL, HELMET, properties); + this.color = color; + } - @Override - public void initializeClient(Consumer consumer) { - consumer.accept(new AntiRadiationArmorClientExtensions()); - } + @Override + public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { + return String.valueOf(CreateNuclear.asResource("textures/models/armor/"+color+"_anti_radiation_suit_layer_"+(slot == EquipmentSlot.LEGS ? 2 : 1)+".png")); + } - @Override - public void inventoryTick(ItemStack stack, Level level, Entity entity, int slotId, boolean isSelected) { - super.inventoryTick(stack, level, entity, slotId, isSelected); - if (level.isClientSide || !(entity instanceof Player player)) return; - if (!stack.hasTag() || !stack.getTag().contains(ClothTagHelper.COLOR)) return; - if (CNAdvancement.DYE_ANTI_RADIATION_ARMOR.isAlreadyAwardedTo(player)) return; - CNAdvancement.DYE_ANTI_RADIATION_ARMOR.awardTo(player); - } - - public static class Helmet extends AntiRadiationArmorItem implements IGoggleHelmet { - public Helmet(Properties p, DyeColor color) { - super(ArmorMaterials.ANTI_RADIATION_SUIT, Type.HELMET, p, color); + public static class DyeItemHelmetList implements Iterable> { + private static final int COLOR_AMOUNT = DyeColor.values().length; + + private final ItemEntry[] entry = new ItemEntry[COLOR_AMOUNT]; + + public DyeItemHelmetList(Function> filler) { + for (DyeColor color : DyeColor.values()) { + entry[color.ordinal()] = filler.apply(color); + } + } + + @SuppressWarnings("unchecked") + public ItemEntry get(DyeColor color) { + return (ItemEntry) entry[color.ordinal()]; + } + + public boolean contains(Item block) { + for (ItemEntry entry : entry) { + if (entry.is(block)) return true; + } + return false; + } + + @SuppressWarnings("unchecked") + public ItemEntry[] toArray() { + return (ItemEntry[]) Arrays.copyOf(entry, entry.length); + } + + @Override + public Iterator> iterator() { + return new Iterator<>() { + private int index = 0; + @Override + public boolean hasNext() { + return index < entry.length; + } + + @SuppressWarnings("unchecked") + @Override + public ItemEntry next() { + if (!hasNext()) throw new NoSuchElementException(); + return (ItemEntry) entry[index++]; + } + }; + } } - @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - if (slot != this.getType().getSlot()) return super.getDefaultAttributeModifiers(slot); - Multimap map = super.getDefaultAttributeModifiers(slot); - return AntiRadiationArmorItem.irradiatedArmorAttribute(map, Type.HELMET); + public static TagKey getHelmetTag(String key) { + return key.equals("white") + ? CNItemTags.ANTI_RADIATION_ARMOR.tag + : CNItemTags.ANTI_RADIATION_HELMET_DYE.tag; } + + } - public static class Chestplate extends AntiRadiationArmorItem { - public Chestplate(Properties p, DyeColor color) { - super(ArmorMaterials.ANTI_RADIATION_SUIT, Type.CHESTPLATE, p, color); + public static class Chestplate extends ArmorItem { + protected final DyeColor color; + + public Chestplate(Properties properties, DyeColor color) { + super(ARMOR_MATERIAL, CHESTPLATE, properties); + this.color = color; + } @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - if (slot != this.getType().getSlot()) return super.getDefaultAttributeModifiers(slot); - Multimap map = super.getDefaultAttributeModifiers(slot); - return AntiRadiationArmorItem.irradiatedArmorAttribute(map, Type.CHESTPLATE); + public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { + return String.valueOf(CreateNuclear.asResource("textures/models/armor/"+color+"_anti_radiation_suit_layer_"+(slot == EquipmentSlot.LEGS ? 2 : 1)+".png")); + } + + public static class DyeItemChestplateList implements Iterable> { + private static final int COLOR_AMOUNT = DyeColor.values().length; + + private final ItemEntry[] entry = new ItemEntry[COLOR_AMOUNT]; + + public DyeItemChestplateList(Function> filler) { + for (DyeColor color : DyeColor.values()) { + entry[color.ordinal()] = filler.apply(color); + } + } + + @SuppressWarnings("unchecked") + public ItemEntry get(DyeColor color) { + return (ItemEntry) entry[color.ordinal()]; + } + + public boolean contains(Item block) { + for (ItemEntry entry : entry) { + if (entry.is(block)) return true; + } + return false; + } + + @SuppressWarnings("unchecked") + public ItemEntry[] toArray() { + return (ItemEntry[]) Arrays.copyOf(entry, entry.length); + } + + @Override + public Iterator> iterator() { + return new Iterator<>() { + private int index = 0; + @Override + public boolean hasNext() { + return index < entry.length; + } + + @SuppressWarnings("unchecked") + @Override + public ItemEntry next() { + if (!hasNext()) throw new NoSuchElementException(); + return (ItemEntry) entry[index++]; + } + }; + } + } + + public static TagKey getChestplateTag(String key) { + return key.equals("white") + ? CNItemTags.ANTI_RADIATION_ARMOR.tag + : CNItemTags.ANTI_RADIATION_CHESTPLATE_DYE.tag; } } - public static class Leggings extends AntiRadiationArmorItem { - public Leggings(Properties p, DyeColor color) { - super(ArmorMaterials.ANTI_RADIATION_SUIT, Type.LEGGINGS, p, color); + public static class Leggings extends ArmorItem { + protected final DyeColor color; + + public Leggings(Properties properties, DyeColor color) { + super(ARMOR_MATERIAL, LEGGINGS, properties); + this.color = color; + } @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - if (slot != this.getType().getSlot()) return super.getDefaultAttributeModifiers(slot); - Multimap map = super.getDefaultAttributeModifiers(slot); - return AntiRadiationArmorItem.irradiatedArmorAttribute(map, Type.LEGGINGS); + public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { + return String.valueOf(CreateNuclear.asResource("textures/models/armor/"+color+"_anti_radiation_suit_layer_"+(slot == EquipmentSlot.LEGS ? 2 : 1)+".png")); + } + + public static class DyeItemLeggingsList implements Iterable> { + private static final int COLOR_AMOUNT = DyeColor.values().length; + + private final ItemEntry[] entry = new ItemEntry[COLOR_AMOUNT]; + + public DyeItemLeggingsList(Function> filler) { + for (DyeColor color : DyeColor.values()) { + entry[color.ordinal()] = filler.apply(color); + } + } + + @SuppressWarnings("unchecked") + public ItemEntry get(DyeColor color) { + return (ItemEntry) entry[color.ordinal()]; + } + + public boolean contains(Item block) { + for (ItemEntry entry : entry) { + if (entry.is(block)) return true; + } + return false; + } + + @SuppressWarnings("unchecked") + public ItemEntry[] toArray() { + return (ItemEntry[]) Arrays.copyOf(entry, entry.length); + } + + @Override + public Iterator> iterator() { + return new Iterator<>() { + private int index = 0; + @Override + public boolean hasNext() { + return index < entry.length; + } + + @SuppressWarnings("unchecked") + @Override + public ItemEntry next() { + if (!hasNext()) throw new NoSuchElementException(); + return (ItemEntry) entry[index++]; + } + }; + } + } + + public static TagKey getLeggingsTag(String key) { + return key.equals("white") + ? CNItemTags.ANTI_RADIATION_ARMOR.tag + : CNItemTags.ANTI_RADIATION_LEGGINGS_DYE.tag; } } - public static class Boot extends AntiRadiationArmorItem { - public Boot(Properties p, DyeColor color) { - super(ArmorMaterials.ANTI_RADIATION_SUIT, Type.BOOTS, p, color); + public static class Boot extends ArmorItem { + public Boot(Properties properties) { + super(ARMOR_MATERIAL, BOOTS, properties); } @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - if (slot != this.getType().getSlot()) return super.getDefaultAttributeModifiers(slot); - Multimap map = super.getDefaultAttributeModifiers(slot); - return AntiRadiationArmorItem.irradiatedArmorAttribute(map, Type.BOOTS); + public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot, String type) { + return String.valueOf(CreateNuclear.asResource("textures/models/armor/white_anti_radiation_suit_layer_1.png")); + } } - public interface IGoggleHelmet { - static boolean isGoggleHelmet(LivingEntity entity) { - ItemStack headSlot = entity.getItemBySlot(EquipmentSlot.HEAD); - return CNItems.ANTI_RADIATION_HELMETS.isIn(headSlot); + public enum Armor { + WHITE_ARMOR(DyeColor.WHITE), + YELLOW_ARMOR(DyeColor.YELLOW), + RED_ARMOR(DyeColor.RED), + BLUE_ARMOR(DyeColor.BLUE), + GREEN_ARMOR(DyeColor.GREEN), + BLACK_ARMOR(DyeColor.BLACK), + ORANGE_ARMOR(DyeColor.ORANGE), + PURPLE_ARMOR(DyeColor.PURPLE), + BROWN_ARMOR(DyeColor.BROWN), + PINK_ARMOR(DyeColor.PINK), + CYAN_ARMOR(DyeColor.CYAN), + LIGHT_GRAY_ARMOR(DyeColor.LIGHT_GRAY), + GRAY_ARMOR(DyeColor.GRAY), + LIGHT_BLUE_ARMOR(DyeColor.LIGHT_BLUE), + LIME_ARMOR(DyeColor.LIME), + MAGENTA_ARMOR(DyeColor.MAGENTA); + + private static final Map> helmetMap = new EnumMap<>(DyeColor.class); + private static final Map> chestplateMap = new EnumMap<>(DyeColor.class); + private static final Map> leggingsMap = new EnumMap<>(DyeColor.class); + + static { + for (DyeColor color : DyeColor.values()) { + helmetMap.put(color, CNItems.ANTI_RADIATION_HELMETS.get(color)); + chestplateMap.put(color, CNItems.ANTI_RADIATION_CHESTPLATES.get(color)); + leggingsMap.put(color, CNItems.ANTI_RADIATION_LEGGINGS.get(color)); + } + } + + private final DyeColor color; + + Armor(DyeColor dyeColor) { + this.color = dyeColor; + } + + public ItemEntry getHelmetItem() { + return helmetMap.get(this.color); + } + + public static ItemEntry getHelmetByColor(DyeColor color) { + return helmetMap.get(color); + } + + public ItemEntry getChestplateItem() { + return chestplateMap.get(this.color); + } + + public static ItemEntry getChestplateByColor(DyeColor color) { + return chestplateMap.get(color); + } + + public ItemEntry getLeggingsItem() { + return leggingsMap.get(this.color); + } + + public static ItemEntry getLeggingsByColor(DyeColor color) { + return leggingsMap.get(color); + } + + public static boolean isArmored(ItemStack item) { + return helmetMap.values().stream().anyMatch(entry -> entry.is(item.getItem())) || + chestplateMap.values().stream().anyMatch(entry -> entry.is(item.getItem())) || + leggingsMap.values().stream().anyMatch(entry -> entry.is(item.getItem())); + } + + public static boolean isArmored2(ItemStack item) { + return CNItems.ANTI_RADIATION_HELMETS.contains(item.getItem()) + || CNItems.ANTI_RADIATION_CHESTPLATES.contains(item.getItem()) + || CNItems.ANTI_RADIATION_LEGGINGS.contains(item.getItem()) + || CNItems.ANTI_RADIATION_BOOTS.is(item.getItem()) + ; } } -} \ No newline at end of file + +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorModel.java b/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorModel.java deleted file mode 100644 index 7fa8caa82..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/equipment/armor/AntiRadiationArmorModel.java +++ /dev/null @@ -1,99 +0,0 @@ -package net.nuclearteam.createnuclear.content.equipment.armor; - - -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import net.minecraft.client.model.HumanoidModel; -import net.minecraft.client.model.geom.ModelPart; -import net.minecraft.client.model.geom.PartPose; -import net.minecraft.client.model.geom.builders.*; -import net.minecraft.world.entity.EquipmentSlot; -import net.minecraft.world.entity.LivingEntity; - -public class AntiRadiationArmorModel extends HumanoidModel { - private final ModelPart head; - private final ModelPart body; - private final ModelPart right_arm; - private final ModelPart left_arm; - private final ModelPart right_leg; - private final ModelPart left_leg; - private final ModelPart left_boot; - private final ModelPart right_boot; - - // Set per render pass by AntiRadiationArmorClientExtensions so renderToBuffer can show - // the legs for LEGS (leggings) but only the boots for FEET (boots) — Forge makes the - // vanilla leg parts visible for BOTH slots, so we disambiguate here. - public EquipmentSlot currentSlot = EquipmentSlot.HEAD; - - public AntiRadiationArmorModel(ModelPart root) { - super(root); - this.head = root.getChild("head"); - this.body = root.getChild("body"); - this.right_arm = root.getChild("right_arm"); - this.left_arm = root.getChild("left_arm"); - this.right_leg = root.getChild("right_leg"); - this.left_leg = root.getChild("left_leg"); - this.left_boot = root.getChild("left_boot"); - this.right_boot = root.getChild("right_boot"); - } - - public static LayerDefinition createBodyLayer() { - MeshDefinition meshdefinition = new MeshDefinition(); - PartDefinition partdefinition = meshdefinition.getRoot(); - - // HumanoidModel's constructor requires a "hat" child; keep it empty. - partdefinition.addOrReplaceChild("hat", CubeListBuilder.create(), PartPose.ZERO); - - PartDefinition head = partdefinition.addOrReplaceChild("head", CubeListBuilder.create().texOffs(30, 0).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, new CubeDeformation(0.2F)) - .texOffs(30, 16).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, new CubeDeformation(0.5F)), PartPose.offset(0.0F, 0.0F, 0.0F)); - - PartDefinition body = partdefinition.addOrReplaceChild("body", CubeListBuilder.create().texOffs(0, 19).addBox(-3.7F, 0.0F, -2.8F, 8.0F, 12.0F, 5.0F, new CubeDeformation(0.0F)) - .texOffs(0, 0).addBox(-4.4F, -1.0F, -3.1F, 9.0F, 13.0F, 6.0F, new CubeDeformation(0.0F)) - .texOffs(0, 36).addBox(-4.0F, 0.0F, -2.7F, 8.0F, 12.0F, 5.0F, new CubeDeformation(0.0F)) - .texOffs(64, 0).addBox(-4.5F, -1.0F, -3.0F, 9.0F, 13.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); - - PartDefinition right_arm = partdefinition.addOrReplaceChild("right_arm", CubeListBuilder.create().texOffs(45, 32).mirror().addBox(-3.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.45F)).mirror(false) - .texOffs(29, 32).mirror().addBox(-3.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.55F)).mirror(false), PartPose.offset(-5.0F, 2.0F, 0.0F)); - - PartDefinition left_arm = partdefinition.addOrReplaceChild("left_arm", CubeListBuilder.create().texOffs(45, 32).addBox(-1.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.4F)) - .texOffs(29, 32).addBox(-1.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.5F)), PartPose.offset(5.0F, 2.0F, 0.0F)); - - PartDefinition right_leg = partdefinition.addOrReplaceChild("right_leg", CubeListBuilder.create().texOffs(29, 48).mirror().addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).mirror(false) - .texOffs(45, 48).mirror().addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.25F)).mirror(false), PartPose.offset(1.9F, 12.0F, 0.0F)); - - PartDefinition left_leg = partdefinition.addOrReplaceChild("left_leg", CubeListBuilder.create().texOffs(29, 48).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)) - .texOffs(45, 48).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, new CubeDeformation(0.25F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - - partdefinition.addOrReplaceChild("left_boot", CubeListBuilder.create().texOffs(61, 39).addBox(-2.0F, 8.3F, -2.0F, 4.0F, 4.0F, 4.0F, new CubeDeformation(0.25F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - - partdefinition.addOrReplaceChild("right_boot", CubeListBuilder.create().texOffs(61, 39).mirror().addBox(-2.0F, 8.3F, -2.0F, 4.0F, 4.0F, 4.0F, new CubeDeformation(0.25F)).mirror(false), PartPose.offset(1.9F, 12.0F, 0.0F)); - - return LayerDefinition.create(meshdefinition, 96, 96); - } - - @Override - public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { - // Make the boots follow the (already animated) legs. - this.right_boot.copyFrom(this.right_leg); - this.left_boot.copyFrom(this.left_leg); - - // Control part visibility based on the slot being rendered - this.head.visible = this.currentSlot == EquipmentSlot.HEAD; - this.body.visible = this.currentSlot == EquipmentSlot.CHEST; - this.right_arm.visible = this.currentSlot == EquipmentSlot.CHEST; - this.left_arm.visible = this.currentSlot == EquipmentSlot.CHEST; - this.right_leg.visible = this.currentSlot == EquipmentSlot.LEGS; - this.left_leg.visible = this.currentSlot == EquipmentSlot.LEGS; - this.right_boot.visible = this.currentSlot == EquipmentSlot.FEET; - this.left_boot.visible = this.currentSlot == EquipmentSlot.FEET; - - if (this.head.visible) head.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.body.visible) body.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.right_arm.visible) right_arm.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.left_arm.visible) left_arm.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.right_leg.visible) right_leg.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.left_leg.visible) left_leg.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.right_boot.visible) right_boot.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - if (this.left_boot.visible) left_boot.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/equipment/cloth/ClothItem.java b/src/main/java/net/nuclearteam/createnuclear/content/equipment/cloth/ClothItem.java index 2cef1a8c4..6d6856828 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/equipment/cloth/ClothItem.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/equipment/cloth/ClothItem.java @@ -6,6 +6,7 @@ import net.nuclearteam.createnuclear.CNItems; import java.util.*; +import java.util.function.Function; @SuppressWarnings("unused") public class ClothItem extends Item { @@ -17,10 +18,6 @@ public ClothItem(Item.Properties properties, DyeColor color) { this.color = color; } - public DyeColor getColor() { - return color; - } - public enum Cloths { WHITE_CLOTH(DyeColor.WHITE), YELLOW_CLOTH(DyeColor.YELLOW), @@ -57,10 +54,6 @@ public ItemEntry getItem() { return clothMap.get(this.color); } - public DyeColor getColor() { - return color; - } - public static ItemEntry getByColor(DyeColor color) { return clothMap.get(color); } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedEntityModel.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedEntityModel.java deleted file mode 100644 index 81ca034a1..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedEntityModel.java +++ /dev/null @@ -1,32 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import net.minecraft.world.entity.Entity; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; - -@OnlyIn(Dist.CLIENT) -public abstract class CNAdvancedEntityModel extends CNBasicEntityModel { - private float movementScale = 1.0F; - public int texWidth = 32; - public int texHeight = 32; - - public void updateDefaultPose() { - this.getAllParts().forEach(CNAdvancedModelBox::updateDefaultPose); - } - - public void resetToDefaultPose() { - this.getAllParts().forEach(CNAdvancedModelBox::resetToDefaultPose); - } - - public float getMovementScale() { - return this.movementScale; - } - - public void setRotateAngle(CNAdvancedModelBox model, float x, float y, float z) { - model.rotateAngleX = x; - model.rotateAngleY = y; - model.rotateAngleZ = z; - } - - public abstract Iterable getAllParts(); -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedModelBox.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedModelBox.java deleted file mode 100644 index 06bf89c0c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNAdvancedModelBox.java +++ /dev/null @@ -1,208 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import com.mojang.math.Axis; -import it.unimi.dsi.fastutil.objects.ObjectArrayList; -import it.unimi.dsi.fastutil.objects.ObjectList; -import it.unimi.dsi.fastutil.objects.ObjectListIterator; -import net.minecraft.util.Mth; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import org.joml.Matrix3f; -import org.joml.Matrix4f; -import org.joml.Vector3f; -import org.joml.Vector4f; - -@OnlyIn(Dist.CLIENT) -public class CNAdvancedModelBox extends CNBasicModelPart { - public float defaultRotationX; - public float defaultRotationY; - public float defaultRotationZ; - public float defaultPositionX; - public float defaultPositionY; - public float defaultPositionZ; - public float scaleX; - public float scaleY; - public float scaleZ; - public int textureOffsetX; - public int textureOffsetY; - public boolean scaleChildren; - private CNAdvancedEntityModel model; - private CNAdvancedModelBox parent; - public ObjectList cubeList; - public ObjectList childModels; - private float textureWidth; - private float textureHeight; - public String boxName; - - public CNAdvancedModelBox(CNAdvancedEntityModel model, String name) { - super(model); - this.scaleX = 1.0F; - this.scaleY = 1.0F; - this.scaleZ = 1.0F; - this.boxName = ""; - this.textureWidth = (float)model.texWidth; - this.textureHeight = (float)model.texHeight; - this.model = model; - this.cubeList = new ObjectArrayList(); - this.childModels = new ObjectArrayList(); - this.boxName = name; - } - - public CNAdvancedModelBox(CNAdvancedEntityModel model) { - this(model, null); - this.textureWidth = (float)model.texWidth; - this.textureHeight = (float)model.texHeight; - this.cubeList = new ObjectArrayList(); - this.childModels = new ObjectArrayList(); - } - - public CNBasicModelPart addBox(String p_217178_1_, float p_217178_2_, float p_217178_3_, float p_217178_4_, int p_217178_5_, int p_217178_6_, int p_217178_7_, float p_217178_8_, int p_217178_9_, int p_217178_10_) { - this.setTextureOffset(p_217178_9_, p_217178_10_); - this.addBox(this.textureOffsetX, this.textureOffsetY, p_217178_2_, p_217178_3_, p_217178_4_, (float)p_217178_5_, (float)p_217178_6_, (float)p_217178_7_, p_217178_8_, p_217178_8_, p_217178_8_, this.mirror, false); - return this; - } - - public CNBasicModelPart addBox(float p_228300_1_, float p_228300_2_, float p_228300_3_, float p_228300_4_, float p_228300_5_, float p_228300_6_) { - this.addBox(this.textureOffsetX, this.textureOffsetY, p_228300_1_, p_228300_2_, p_228300_3_, p_228300_4_, p_228300_5_, p_228300_6_, 0.0F, 0.0F, 0.0F, this.mirror, false); - return this; - } - - public CNBasicModelPart addBox(float p_228304_1_, float p_228304_2_, float p_228304_3_, float p_228304_4_, float p_228304_5_, float p_228304_6_, boolean p_228304_7_) { - this.addBox(this.textureOffsetX, this.textureOffsetY, p_228304_1_, p_228304_2_, p_228304_3_, p_228304_4_, p_228304_5_, p_228304_6_, 0.0F, 0.0F, 0.0F, p_228304_7_, false); - return this; - } - - public void addBox(float p_228301_1_, float p_228301_2_, float p_228301_3_, float p_228301_4_, float p_228301_5_, float p_228301_6_, float p_228301_7_) { - this.addBox(this.textureOffsetX, this.textureOffsetY, p_228301_1_, p_228301_2_, p_228301_3_, p_228301_4_, p_228301_5_, p_228301_6_, p_228301_7_, p_228301_7_, p_228301_7_, this.mirror, false); - } - - public void addBox(float p_228302_1_, float p_228302_2_, float p_228302_3_, float p_228302_4_, float p_228302_5_, float p_228302_6_, float p_228302_7_, float p_228302_8_, float p_228302_9_) { - this.addBox(this.textureOffsetX, this.textureOffsetY, p_228302_1_, p_228302_2_, p_228302_3_, p_228302_4_, p_228302_5_, p_228302_6_, p_228302_7_, p_228302_8_, p_228302_9_, this.mirror, false); - } - - public void addBox(float p_228303_1_, float p_228303_2_, float p_228303_3_, float p_228303_4_, float p_228303_5_, float p_228303_6_, float p_228303_7_, boolean p_228303_8_) { - this.addBox(this.textureOffsetX, this.textureOffsetY, p_228303_1_, p_228303_2_, p_228303_3_, p_228303_4_, p_228303_5_, p_228303_6_, p_228303_7_, p_228303_7_, p_228303_7_, p_228303_8_, false); - } - - private void addBox(int p_228305_1_, int p_228305_2_, float p_228305_3_, float p_228305_4_, float p_228305_5_, float p_228305_6_, float p_228305_7_, float p_228305_8_, float p_228305_9_, float p_228305_10_, float p_228305_11_, boolean p_228305_12_, boolean p_228305_13_) { - this.cubeList.add(new CNTabulaModelRenderUtils.ModelBox(p_228305_1_, p_228305_2_, p_228305_3_, p_228305_4_, p_228305_5_, p_228305_6_, p_228305_7_, p_228305_8_, p_228305_9_, p_228305_10_, p_228305_11_, p_228305_12_, this.textureWidth, this.textureHeight)); - } - - public void setScale(float scaleX, float scaleY, float scaleZ) { - this.scaleX = scaleX; - this.scaleY = scaleY; - this.scaleZ = scaleZ; - } - - public void updateDefaultPose() { - this.defaultRotationX = this.rotateAngleX; - this.defaultRotationY = this.rotateAngleY; - this.defaultRotationZ = this.rotateAngleZ; - this.defaultPositionX = this.rotationPointX; - this.defaultPositionY = this.rotationPointY; - this.defaultPositionZ = this.rotationPointZ; - } - - public void resetToDefaultPose() { - this.rotateAngleX = this.defaultRotationX; - this.rotateAngleY = this.defaultRotationY; - this.rotateAngleZ = this.defaultRotationZ; - this.rotationPointX = this.defaultPositionX; - this.rotationPointY = this.defaultPositionY; - this.rotationPointZ = this.defaultPositionZ; - } - - public void addChild(CNBasicModelPart child) { - super.addChild(child); - this.childModels.add(child); - if (child instanceof CNAdvancedModelBox advancedChild) { - advancedChild.setParent(this); - } - } - - public CNAdvancedModelBox getParent() { - return this.parent; - } - - public void setParent(CNAdvancedModelBox parent) { - this.parent = parent; - } - - public void translateAndRotate(PoseStack matrixStackIn) { - matrixStackIn.translate(this.rotationPointX / 16.0F, this.rotationPointY / 16.0F, (double)(this.rotationPointZ / 16.0F)); - if (this.rotateAngleZ != 0.0F) { - matrixStackIn.mulPose(Axis.ZP.rotation(this.rotateAngleZ)); - } - - if (this.rotateAngleY != 0.0F) { - matrixStackIn.mulPose(Axis.YP.rotation(this.rotateAngleY)); - } - - if (this.rotateAngleX != 0.0F) { - matrixStackIn.mulPose(Axis.XP.rotation(this.rotateAngleX)); - } - - matrixStackIn.scale(this.scaleX, this.scaleY, this.scaleZ); - } - - public void render(PoseStack p_228309_1_, VertexConsumer p_228309_2_, int p_228309_3_, int p_228309_4_, float p_228309_5_, float p_228309_6_, float p_228309_7_, float p_228309_8_) { - if (this.showModel && (!this.cubeList.isEmpty() || !this.childModels.isEmpty())) { - p_228309_1_.pushPose(); - this.translateAndRotate(p_228309_1_); - this.doRender(p_228309_1_.last(), p_228309_2_, p_228309_3_, p_228309_4_, p_228309_5_, p_228309_6_, p_228309_7_, p_228309_8_); - ObjectListIterator var9 = this.childModels.iterator(); - if (!this.scaleChildren) { - p_228309_1_.scale(1.0F / Math.max(this.scaleX, 1.0E-4F), 1.0F / Math.max(this.scaleY, 1.0E-4F), 1.0F / Math.max(this.scaleZ, 1.0E-4F)); - } - - while(var9.hasNext()) { - CNBasicModelPart lvt_10_1_ = (CNBasicModelPart)var9.next(); - lvt_10_1_.render(p_228309_1_, p_228309_2_, p_228309_3_, p_228309_4_, p_228309_5_, p_228309_6_, p_228309_7_, p_228309_8_); - } - - p_228309_1_.popPose(); - } - - } - - private void doRender(PoseStack.Pose p_228306_1_, VertexConsumer p_228306_2_, int p_228306_3_, int p_228306_4_, float p_228306_5_, float p_228306_6_, float p_228306_7_, float p_228306_8_) { - Matrix4f lvt_9_1_ = p_228306_1_.pose(); - Matrix3f lvt_10_1_ = p_228306_1_.normal(); - ObjectListIterator var11 = this.cubeList.iterator(); - - while(var11.hasNext()) { - CNTabulaModelRenderUtils.ModelBox lvt_12_1_ = (CNTabulaModelRenderUtils.ModelBox)var11.next(); - - for(CNTabulaModelRenderUtils.TexturedQuad lvt_16_1_ : lvt_12_1_.quads) { - Vector3f lvt_17_1_ = new Vector3f(lvt_16_1_.normal); - lvt_17_1_.mul(lvt_10_1_); - float lvt_18_1_ = lvt_17_1_.x(); - float lvt_19_1_ = lvt_17_1_.y(); - float lvt_20_1_ = lvt_17_1_.z(); - - for(int lvt_21_1_ = 0; lvt_21_1_ < 4; ++lvt_21_1_) { - CNTabulaModelRenderUtils.PositionTextureVertex lvt_22_1_ = lvt_16_1_.vertexPositions[lvt_21_1_]; - float lvt_23_1_ = lvt_22_1_.position.x() / 16.0F; - float lvt_24_1_ = lvt_22_1_.position.y() / 16.0F; - float lvt_25_1_ = lvt_22_1_.position.z() / 16.0F; - Vector4f lvt_26_1_ = new Vector4f(lvt_23_1_, lvt_24_1_, lvt_25_1_, 1.0F); - lvt_26_1_.mul(lvt_9_1_); - p_228306_2_.vertex(lvt_26_1_.x(), lvt_26_1_.y(), lvt_26_1_.z(), p_228306_5_, p_228306_6_, p_228306_7_, p_228306_8_, lvt_22_1_.textureU, lvt_22_1_.textureV, p_228306_4_, p_228306_3_, lvt_18_1_, lvt_19_1_, lvt_20_1_); - } - } - } - - } - - public CNAdvancedEntityModel getModel() { - return this.model; - } - - public CNAdvancedModelBox setTextureOffset(int textureOffsetX, int textureOffsetY) { - this.textureOffsetX = textureOffsetX; - this.textureOffsetY = textureOffsetY; - return this; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicEntityModel.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicEntityModel.java deleted file mode 100644 index 57fc33c1a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicEntityModel.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import java.util.function.Function; -import net.minecraft.client.model.EntityModel; -import net.minecraft.client.renderer.RenderType; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.Entity; - -public abstract class CNBasicEntityModel extends EntityModel { - public int textureWidth; - public int textureHeight; - - protected CNBasicEntityModel() { - this(RenderType::entityCutoutNoCull); - } - - protected CNBasicEntityModel(Function p_102613_) { - super(p_102613_); - this.textureWidth = 64; - this.textureHeight = 32; - } - - public void renderToBuffer(PoseStack p_103013_, VertexConsumer p_103014_, int p_103015_, int p_103016_, float p_103017_, float p_103018_, float p_103019_, float p_103020_) { - this.parts().forEach((p_103030_) -> p_103030_.render(p_103013_, p_103014_, p_103015_, p_103016_, p_103017_, p_103018_, p_103019_, p_103020_)); - } - - public abstract Iterable parts(); - - public abstract void setupAnim(T var1, float var2, float var3, float var4, float var5, float var6); - - public void prepareMobModel(T p_102614_, float p_102615_, float p_102616_, float p_102617_) { - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicModelPart.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicModelPart.java deleted file mode 100644 index 29a5b3c2d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNBasicModelPart.java +++ /dev/null @@ -1,315 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import com.mojang.math.Axis; -import it.unimi.dsi.fastutil.objects.ObjectArrayList; -import it.unimi.dsi.fastutil.objects.ObjectList; -import it.unimi.dsi.fastutil.objects.ObjectListIterator; -import net.minecraft.core.Direction; -import net.minecraft.util.RandomSource; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import org.joml.Matrix3f; -import org.joml.Matrix4f; -import org.joml.Vector3f; -import org.joml.Vector4f; - -@OnlyIn(Dist.CLIENT) -public class CNBasicModelPart { - public float textureWidth; - public float textureHeight; - public int textureOffsetX; - public int textureOffsetY; - public float rotationPointX; - public float rotationPointY; - public float rotationPointZ; - public float rotateAngleX; - public float rotateAngleY; - public float rotateAngleZ; - public boolean mirror; - public boolean showModel; - private final ObjectList cubeList; - private final ObjectList childModels; - - public CNBasicModelPart(CNBasicEntityModel model) { - this.textureWidth = 64.0F; - this.textureHeight = 32.0F; - this.showModel = true; - this.cubeList = new ObjectArrayList(); - this.childModels = new ObjectArrayList(); - this.setTextureSize(model.textureWidth, model.textureHeight); - } - - public CNBasicModelPart(CNBasicEntityModel model, int texOffX, int texOffY) { - this(model.textureWidth, model.textureHeight, texOffX, texOffY); - } - - public CNBasicModelPart(int textureWidthIn, int textureHeightIn, int textureOffsetXIn, int textureOffsetYIn) { - this.textureWidth = 64.0F; - this.textureHeight = 32.0F; - this.showModel = true; - this.cubeList = new ObjectArrayList(); - this.childModels = new ObjectArrayList(); - this.setTextureSize(textureWidthIn, textureHeightIn); - this.setTextureOffset(textureOffsetXIn, textureOffsetYIn); - } - - private CNBasicModelPart() { - this.textureWidth = 64.0F; - this.textureHeight = 32.0F; - this.showModel = true; - this.cubeList = new ObjectArrayList(); - this.childModels = new ObjectArrayList(); - } - - public CNBasicModelPart getModelAngleCopy() { - CNBasicModelPart CNBasicModelPart = new CNBasicModelPart(); - CNBasicModelPart.copyModelAngles(this); - return CNBasicModelPart; - } - - public void copyModelAngles(CNBasicModelPart CNBasicModelPartIn) { - this.rotateAngleX = CNBasicModelPartIn.rotateAngleX; - this.rotateAngleY = CNBasicModelPartIn.rotateAngleY; - this.rotateAngleZ = CNBasicModelPartIn.rotateAngleZ; - this.rotationPointX = CNBasicModelPartIn.rotationPointX; - this.rotationPointY = CNBasicModelPartIn.rotationPointY; - this.rotationPointZ = CNBasicModelPartIn.rotationPointZ; - } - - public void addChild(CNBasicModelPart renderer) { - this.childModels.add(renderer); - } - - public CNBasicModelPart setTextureOffset(int x, int y) { - this.textureOffsetX = x; - this.textureOffsetY = y; - return this; - } - - public CNBasicModelPart addBox(String partName, float x, float y, float z, int width, int height, int depth, float delta, int texX, int texY) { - this.setTextureOffset(texX, texY); - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, (float)width, (float)height, (float)depth, delta, delta, delta, this.mirror, false); - return this; - } - - public CNBasicModelPart addBox(float x, float y, float z, float width, float height, float depth) { - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, width, height, depth, 0.0F, 0.0F, 0.0F, this.mirror, false); - return this; - } - - public CNBasicModelPart addBox(float x, float y, float z, float width, float height, float depth, boolean mirrorIn) { - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, width, height, depth, 0.0F, 0.0F, 0.0F, mirrorIn, false); - return this; - } - - public void addBox(float x, float y, float z, float width, float height, float depth, float delta) { - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, width, height, depth, delta, delta, delta, this.mirror, false); - } - - public void addBox(float x, float y, float z, float width, float height, float depth, float deltaX, float deltaY, float deltaZ) { - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, width, height, depth, deltaX, deltaY, deltaZ, this.mirror, false); - } - - public void addBox(float x, float y, float z, float width, float height, float depth, float delta, boolean mirrorIn) { - this.addBox(this.textureOffsetX, this.textureOffsetY, x, y, z, width, height, depth, delta, delta, delta, mirrorIn, false); - } - - private void addBox(int texOffX, int texOffY, float x, float y, float z, float width, float height, float depth, float deltaX, float deltaY, float deltaZ, boolean mirorIn, boolean p_228305_13_) { - this.cubeList.add(new CNBasicModelPart.ModelBox(texOffX, texOffY, x, y, z, width, height, depth, deltaX, deltaY, deltaZ, mirorIn, this.textureWidth, this.textureHeight)); - } - - public void setRotationPoint(float rotationPointXIn, float rotationPointYIn, float rotationPointZIn) { - this.rotationPointX = rotationPointXIn; - this.rotationPointY = rotationPointYIn; - this.rotationPointZ = rotationPointZIn; - } - - public void render(PoseStack matrixStackIn, VertexConsumer bufferIn, int packedLightIn, int packedOverlayIn) { - this.render(matrixStackIn, bufferIn, packedLightIn, packedOverlayIn, 1.0F, 1.0F, 1.0F, 1.0F); - } - - public void render(PoseStack matrixStackIn, VertexConsumer bufferIn, int packedLightIn, int packedOverlayIn, float red, float green, float blue, float alpha) { - if (this.showModel && (!this.cubeList.isEmpty() || !this.childModels.isEmpty())) { - matrixStackIn.pushPose(); - this.translateRotate(matrixStackIn); - this.doRender(matrixStackIn.last(), bufferIn, packedLightIn, packedOverlayIn, red, green, blue, alpha); - ObjectListIterator var9 = this.childModels.iterator(); - - while(var9.hasNext()) { - CNBasicModelPart CNBasicModelPart = (CNBasicModelPart)var9.next(); - CNBasicModelPart.render(matrixStackIn, bufferIn, packedLightIn, packedOverlayIn, red, green, blue, alpha); - } - - matrixStackIn.popPose(); - } - - } - - public void translateRotate(PoseStack matrixStackIn) { - matrixStackIn.translate((double)(this.rotationPointX / 16.0F), (double)(this.rotationPointY / 16.0F), (double)(this.rotationPointZ / 16.0F)); - if (this.rotateAngleZ != 0.0F) { - matrixStackIn.mulPose(Axis.ZP.rotation(this.rotateAngleZ)); - } - - if (this.rotateAngleY != 0.0F) { - matrixStackIn.mulPose(Axis.YP.rotation(this.rotateAngleY)); - } - - if (this.rotateAngleX != 0.0F) { - matrixStackIn.mulPose(Axis.XP.rotation(this.rotateAngleX)); - } - - } - - private void doRender(PoseStack.Pose matrixEntryIn, VertexConsumer bufferIn, int packedLightIn, int packedOverlayIn, float red, float green, float blue, float alpha) { - Matrix4f matrix4f = matrixEntryIn.pose(); - Matrix3f matrix3f = matrixEntryIn.normal(); - ObjectListIterator var11 = this.cubeList.iterator(); - - while(var11.hasNext()) { - CNBasicModelPart.ModelBox CNBasicModelPart$modelbox = (CNBasicModelPart.ModelBox)var11.next(); - - for(CNBasicModelPart.TexturedQuad CNBasicModelPart$texturedquad : CNBasicModelPart$modelbox.quads) { - Vector3f vector3f = new Vector3f(CNBasicModelPart$texturedquad.normal); - vector3f.mul(matrix3f); - float f = vector3f.x(); - float f1 = vector3f.y(); - float f2 = vector3f.z(); - - for(int i = 0; i < 4; ++i) { - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex = CNBasicModelPart$texturedquad.vertexPositions[i]; - float f3 = CNBasicModelPart$positiontexturevertex.position.x() / 16.0F; - float f4 = CNBasicModelPart$positiontexturevertex.position.y() / 16.0F; - float f5 = CNBasicModelPart$positiontexturevertex.position.z() / 16.0F; - Vector4f vector4f = new Vector4f(f3, f4, f5, 1.0F); - vector4f.mul(matrix4f); - bufferIn.vertex(vector4f.x(), vector4f.y(), vector4f.z(), red, green, blue, alpha, CNBasicModelPart$positiontexturevertex.textureU, CNBasicModelPart$positiontexturevertex.textureV, packedOverlayIn, packedLightIn, f, f1, f2); - } - } - } - - } - - public CNBasicModelPart setTextureSize(int textureWidthIn, int textureHeightIn) { - this.textureWidth = (float)textureWidthIn; - this.textureHeight = (float)textureHeightIn; - return this; - } - - public CNBasicModelPart.ModelBox getRandomCube(RandomSource randomIn) { - return this.cubeList.size() > 0 ? (CNBasicModelPart.ModelBox)this.cubeList.get(randomIn.nextInt(this.cubeList.size())) : null; - } - - @OnlyIn(Dist.CLIENT) - public static class ModelBox { - private final CNBasicModelPart.TexturedQuad[] quads; - public final float posX1; - public final float posY1; - public final float posZ1; - public final float posX2; - public final float posY2; - public final float posZ2; - - public ModelBox(int texOffX, int texOffY, float x, float y, float z, float width, float height, float depth, float deltaX, float deltaY, float deltaZ, boolean mirorIn, float texWidth, float texHeight) { - this.posX1 = x; - this.posY1 = y; - this.posZ1 = z; - this.posX2 = x + width; - this.posY2 = y + height; - this.posZ2 = z + depth; - this.quads = new CNBasicModelPart.TexturedQuad[6]; - float f = x + width; - float f1 = y + height; - float f2 = z + depth; - x -= deltaX; - y -= deltaY; - z -= deltaZ; - f += deltaX; - f1 += deltaY; - f2 += deltaZ; - if (mirorIn) { - float f3 = f; - f = x; - x = f3; - } - - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex7 = new CNBasicModelPart.PositionTextureVertex(x, y, z, 0.0F, 0.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex = new CNBasicModelPart.PositionTextureVertex(f, y, z, 0.0F, 8.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex1 = new CNBasicModelPart.PositionTextureVertex(f, f1, z, 8.0F, 8.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex2 = new CNBasicModelPart.PositionTextureVertex(x, f1, z, 8.0F, 0.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex3 = new CNBasicModelPart.PositionTextureVertex(x, y, f2, 0.0F, 0.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex4 = new CNBasicModelPart.PositionTextureVertex(f, y, f2, 0.0F, 8.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex5 = new CNBasicModelPart.PositionTextureVertex(f, f1, f2, 8.0F, 8.0F); - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex6 = new CNBasicModelPart.PositionTextureVertex(x, f1, f2, 8.0F, 0.0F); - float f4 = (float)texOffX; - float f5 = (float)texOffX + depth; - float f6 = (float)texOffX + depth + width; - float f7 = (float)texOffX + depth + width + width; - float f8 = (float)texOffX + depth + width + depth; - float f9 = (float)texOffX + depth + width + depth + width; - float f10 = (float)texOffY; - float f11 = (float)texOffY + depth; - float f12 = (float)texOffY + depth + height; - this.quads[2] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex4, CNBasicModelPart$positiontexturevertex3, CNBasicModelPart$positiontexturevertex7, CNBasicModelPart$positiontexturevertex}, f5, f10, f6, f11, texWidth, texHeight, mirorIn, Direction.DOWN); - this.quads[3] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex1, CNBasicModelPart$positiontexturevertex2, CNBasicModelPart$positiontexturevertex6, CNBasicModelPart$positiontexturevertex5}, f6, f11, f7, f10, texWidth, texHeight, mirorIn, Direction.UP); - this.quads[1] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex7, CNBasicModelPart$positiontexturevertex3, CNBasicModelPart$positiontexturevertex6, CNBasicModelPart$positiontexturevertex2}, f4, f11, f5, f12, texWidth, texHeight, mirorIn, Direction.WEST); - this.quads[4] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex, CNBasicModelPart$positiontexturevertex7, CNBasicModelPart$positiontexturevertex2, CNBasicModelPart$positiontexturevertex1}, f5, f11, f6, f12, texWidth, texHeight, mirorIn, Direction.NORTH); - this.quads[0] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex4, CNBasicModelPart$positiontexturevertex, CNBasicModelPart$positiontexturevertex1, CNBasicModelPart$positiontexturevertex5}, f6, f11, f8, f12, texWidth, texHeight, mirorIn, Direction.EAST); - this.quads[5] = new CNBasicModelPart.TexturedQuad(new CNBasicModelPart.PositionTextureVertex[]{CNBasicModelPart$positiontexturevertex3, CNBasicModelPart$positiontexturevertex4, CNBasicModelPart$positiontexturevertex5, CNBasicModelPart$positiontexturevertex6}, f8, f11, f9, f12, texWidth, texHeight, mirorIn, Direction.SOUTH); - } - } - - @OnlyIn(Dist.CLIENT) - static class PositionTextureVertex { - public final Vector3f position; - public final float textureU; - public final float textureV; - - public PositionTextureVertex(float x, float y, float z, float texU, float texV) { - this(new Vector3f(x, y, z), texU, texV); - } - - public CNBasicModelPart.PositionTextureVertex setTextureUV(float texU, float texV) { - return new CNBasicModelPart.PositionTextureVertex(this.position, texU, texV); - } - - public PositionTextureVertex(Vector3f posIn, float texU, float texV) { - this.position = posIn; - this.textureU = texU; - this.textureV = texV; - } - } - - @OnlyIn(Dist.CLIENT) - static class TexturedQuad { - public final CNBasicModelPart.PositionTextureVertex[] vertexPositions; - public final Vector3f normal; - - public TexturedQuad(CNBasicModelPart.PositionTextureVertex[] positionsIn, float u1, float v1, float u2, float v2, float texWidth, float texHeight, boolean mirrorIn, Direction directionIn) { - this.vertexPositions = positionsIn; - float f = 0.0F / texWidth; - float f1 = 0.0F / texHeight; - positionsIn[0] = positionsIn[0].setTextureUV(u2 / texWidth - f, v1 / texHeight + f1); - positionsIn[1] = positionsIn[1].setTextureUV(u1 / texWidth + f, v1 / texHeight + f1); - positionsIn[2] = positionsIn[2].setTextureUV(u1 / texWidth + f, v2 / texHeight - f1); - positionsIn[3] = positionsIn[3].setTextureUV(u2 / texWidth - f, v2 / texHeight - f1); - if (mirrorIn) { - int i = positionsIn.length; - - for(int j = 0; j < i / 2; ++j) { - CNBasicModelPart.PositionTextureVertex CNBasicModelPart$positiontexturevertex = positionsIn[j]; - positionsIn[j] = positionsIn[i - 1 - j]; - positionsIn[i - 1 - j] = CNBasicModelPart$positiontexturevertex; - } - } - - this.normal = directionIn.step(); - if (mirrorIn) { - this.normal.mul(-1.0F, 1.0F, 1.0F); - } - - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNNuclearExplosionSound.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNNuclearExplosionSound.java deleted file mode 100644 index 1e3ed148a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNNuclearExplosionSound.java +++ /dev/null @@ -1,62 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; -import net.minecraft.client.resources.sounds.SoundInstance; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundSource; - -public class CNNuclearExplosionSound extends AbstractTickableSoundInstance { - - /** - * Inflated starting volume, set only so the sound carries across the whole blast radius. - * {@code SoundEngine#play} derives the linear attenuation radius from - * {@code max(volume, 1) * attenuationDistance} once, and never recomputes it, so - * 20 here means ~320 blocks of reach instead of the default 16. - */ - private static final float RANGE_BOOST = 20F; - - private int tickCount = 0; - private final int duration; - private final int fadesAt; - private final float fadeInBy; - - public CNNuclearExplosionSound(SoundEvent soundEvent, double x, double y, double z, int duration, int fadesAt, float fadeInBy, boolean looping) { - super(soundEvent, SoundSource.NEUTRAL, SoundInstance.createUnseededRandom()); - this.attenuation = Attenuation.LINEAR; - this.looping = looping; - this.x = x; - this.y = y; - this.z = z; - this.duration = duration; - this.fadesAt = fadesAt; - this.fadeInBy = fadeInBy; - this.delay = 0; - this.volume = RANGE_BOOST; - } - - public void tick() { - if (tickCount == 0) { - // Queued ticking sounds are played before the tick loop runs (SoundEngine#tickNonPaused), - // so by now the attenuation radius is locked in and RANGE_BOOST has done its job. It has - // to come back down to the [0,1] gain range: SoundEngine#calculateVolume clamps gain to - // 1.0, so any value above 1 makes the fades below inaudible until the very last tick. - volume = 1F; - } - - if(tickCount < this.duration){ - if(tickCount >= fadesAt){ - float shrinkVolumeFor = 1F / Math.max(this.duration - fadesAt, 1F); - volume = Math.max(0, volume - shrinkVolumeFor); - }else if(volume < 1F){ - volume = Math.min(1F, volume + fadeInBy); - } - tickCount++; - }else{ - stop(); - } - } - - public boolean canStartSilent() { - return true; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNTabulaModelRenderUtils.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNTabulaModelRenderUtils.java deleted file mode 100644 index fd88ab92f..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/CNTabulaModelRenderUtils.java +++ /dev/null @@ -1,119 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import net.minecraft.core.Direction; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import org.joml.Vector3f; - -public class CNTabulaModelRenderUtils { - @OnlyIn(Dist.CLIENT) - static class PositionTextureVertex { - public final Vector3f position; - public final float textureU; - public final float textureV; - - public PositionTextureVertex(float p_i1158_1_, float p_i1158_2_, float p_i1158_3_, float p_i1158_4_, float p_i1158_5_) { - this(new Vector3f(p_i1158_1_, p_i1158_2_, p_i1158_3_), p_i1158_4_, p_i1158_5_); - } - - public PositionTextureVertex setTextureUV(float p_78240_1_, float p_78240_2_) { - return new PositionTextureVertex(this.position, p_78240_1_, p_78240_2_); - } - - public PositionTextureVertex(Vector3f p_i225952_1_, float p_i225952_2_, float p_i225952_3_) { - this.position = p_i225952_1_; - this.textureU = p_i225952_2_; - this.textureV = p_i225952_3_; - } - } - - @OnlyIn(Dist.CLIENT) - static class TexturedQuad { - public final PositionTextureVertex[] vertexPositions; - public final Vector3f normal; - - public TexturedQuad(PositionTextureVertex[] p_i225951_1_, float p_i225951_2_, float p_i225951_3_, float p_i225951_4_, float p_i225951_5_, float p_i225951_6_, float p_i225951_7_, boolean p_i225951_8_, Direction p_i225951_9_) { - this.vertexPositions = p_i225951_1_; - float lvt_10_1_ = 0.0F / p_i225951_6_; - float lvt_11_1_ = 0.0F / p_i225951_7_; - p_i225951_1_[0] = p_i225951_1_[0].setTextureUV(p_i225951_4_ / p_i225951_6_ - lvt_10_1_, p_i225951_3_ / p_i225951_7_ + lvt_11_1_); - p_i225951_1_[1] = p_i225951_1_[1].setTextureUV(p_i225951_2_ / p_i225951_6_ + lvt_10_1_, p_i225951_3_ / p_i225951_7_ + lvt_11_1_); - p_i225951_1_[2] = p_i225951_1_[2].setTextureUV(p_i225951_2_ / p_i225951_6_ + lvt_10_1_, p_i225951_5_ / p_i225951_7_ - lvt_11_1_); - p_i225951_1_[3] = p_i225951_1_[3].setTextureUV(p_i225951_4_ / p_i225951_6_ - lvt_10_1_, p_i225951_5_ / p_i225951_7_ - lvt_11_1_); - if (p_i225951_8_) { - int lvt_12_1_ = p_i225951_1_.length; - - for(int lvt_13_1_ = 0; lvt_13_1_ < lvt_12_1_ / 2; ++lvt_13_1_) { - PositionTextureVertex lvt_14_1_ = p_i225951_1_[lvt_13_1_]; - p_i225951_1_[lvt_13_1_] = p_i225951_1_[lvt_12_1_ - 1 - lvt_13_1_]; - p_i225951_1_[lvt_12_1_ - 1 - lvt_13_1_] = lvt_14_1_; - } - } - - this.normal = p_i225951_9_.step(); - if (p_i225951_8_) { - this.normal.mul(-1.0F, 1.0F, 1.0F); - } - - } - } - - @OnlyIn(Dist.CLIENT) - public static class ModelBox { - public final TexturedQuad[] quads; - public final float posX1; - public final float posY1; - public final float posZ1; - public final float posX2; - public final float posY2; - public final float posZ2; - - public ModelBox(int p_i225950_1_, int p_i225950_2_, float p_i225950_3_, float p_i225950_4_, float p_i225950_5_, float p_i225950_6_, float p_i225950_7_, float p_i225950_8_, float p_i225950_9_, float p_i225950_10_, float p_i225950_11_, boolean p_i225950_12_, float p_i225950_13_, float p_i225950_14_) { - this.posX1 = p_i225950_3_; - this.posY1 = p_i225950_4_; - this.posZ1 = p_i225950_5_; - this.posX2 = p_i225950_3_ + p_i225950_6_; - this.posY2 = p_i225950_4_ + p_i225950_7_; - this.posZ2 = p_i225950_5_ + p_i225950_8_; - this.quads = new TexturedQuad[6]; - float lvt_15_1_ = p_i225950_3_ + p_i225950_6_; - float lvt_16_1_ = p_i225950_4_ + p_i225950_7_; - float lvt_17_1_ = p_i225950_5_ + p_i225950_8_; - p_i225950_3_ -= p_i225950_9_; - p_i225950_4_ -= p_i225950_10_; - p_i225950_5_ -= p_i225950_11_; - lvt_15_1_ += p_i225950_9_; - lvt_16_1_ += p_i225950_10_; - lvt_17_1_ += p_i225950_11_; - if (p_i225950_12_) { - float lvt_18_1_ = lvt_15_1_; - lvt_15_1_ = p_i225950_3_; - p_i225950_3_ = lvt_18_1_; - } - - PositionTextureVertex lvt_18_2_ = new PositionTextureVertex(p_i225950_3_, p_i225950_4_, p_i225950_5_, 0.0F, 0.0F); - PositionTextureVertex lvt_19_1_ = new PositionTextureVertex(lvt_15_1_, p_i225950_4_, p_i225950_5_, 0.0F, 8.0F); - PositionTextureVertex lvt_20_1_ = new PositionTextureVertex(lvt_15_1_, lvt_16_1_, p_i225950_5_, 8.0F, 8.0F); - PositionTextureVertex lvt_21_1_ = new PositionTextureVertex(p_i225950_3_, lvt_16_1_, p_i225950_5_, 8.0F, 0.0F); - PositionTextureVertex lvt_22_1_ = new PositionTextureVertex(p_i225950_3_, p_i225950_4_, lvt_17_1_, 0.0F, 0.0F); - PositionTextureVertex lvt_23_1_ = new PositionTextureVertex(lvt_15_1_, p_i225950_4_, lvt_17_1_, 0.0F, 8.0F); - PositionTextureVertex lvt_24_1_ = new PositionTextureVertex(lvt_15_1_, lvt_16_1_, lvt_17_1_, 8.0F, 8.0F); - PositionTextureVertex lvt_25_1_ = new PositionTextureVertex(p_i225950_3_, lvt_16_1_, lvt_17_1_, 8.0F, 0.0F); - float lvt_26_1_ = (float)p_i225950_1_; - float lvt_27_1_ = (float)p_i225950_1_ + p_i225950_8_; - float lvt_28_1_ = (float)p_i225950_1_ + p_i225950_8_ + p_i225950_6_; - float lvt_29_1_ = (float)p_i225950_1_ + p_i225950_8_ + p_i225950_6_ + p_i225950_6_; - float lvt_30_1_ = (float)p_i225950_1_ + p_i225950_8_ + p_i225950_6_ + p_i225950_8_; - float lvt_31_1_ = (float)p_i225950_1_ + p_i225950_8_ + p_i225950_6_ + p_i225950_8_ + p_i225950_6_; - float lvt_32_1_ = (float)p_i225950_2_; - float lvt_33_1_ = (float)p_i225950_2_ + p_i225950_8_; - float lvt_34_1_ = (float)p_i225950_2_ + p_i225950_8_ + p_i225950_7_; - this.quads[2] = new TexturedQuad(new PositionTextureVertex[]{lvt_23_1_, lvt_22_1_, lvt_18_2_, lvt_19_1_}, lvt_27_1_, lvt_32_1_, lvt_28_1_, lvt_33_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.DOWN); - this.quads[3] = new TexturedQuad(new PositionTextureVertex[]{lvt_20_1_, lvt_21_1_, lvt_25_1_, lvt_24_1_}, lvt_28_1_, lvt_33_1_, lvt_29_1_, lvt_32_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.UP); - this.quads[1] = new TexturedQuad(new PositionTextureVertex[]{lvt_18_2_, lvt_22_1_, lvt_25_1_, lvt_21_1_}, lvt_26_1_, lvt_33_1_, lvt_27_1_, lvt_34_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.WEST); - this.quads[4] = new TexturedQuad(new PositionTextureVertex[]{lvt_19_1_, lvt_18_2_, lvt_21_1_, lvt_20_1_}, lvt_27_1_, lvt_33_1_, lvt_28_1_, lvt_34_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.NORTH); - this.quads[0] = new TexturedQuad(new PositionTextureVertex[]{lvt_23_1_, lvt_19_1_, lvt_20_1_, lvt_24_1_}, lvt_28_1_, lvt_33_1_, lvt_30_1_, lvt_34_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.EAST); - this.quads[5] = new TexturedQuad(new PositionTextureVertex[]{lvt_22_1_, lvt_23_1_, lvt_24_1_, lvt_25_1_}, lvt_30_1_, lvt_33_1_, lvt_31_1_, lvt_34_1_, p_i225950_13_, p_i225950_14_, p_i225950_12_, Direction.SOUTH); - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/explosion/NuclearExplosionEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/explosion/NuclearExplosionEntity.java deleted file mode 100644 index 9ce068b5e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/explosion/NuclearExplosionEntity.java +++ /dev/null @@ -1,289 +0,0 @@ -package net.nuclearteam.createnuclear.content.explosion; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.game.ClientGamePacketListener; -import net.minecraft.network.syncher.EntityDataAccessor; -import net.minecraft.network.syncher.EntityDataSerializers; -import net.minecraft.network.syncher.SynchedEntityData; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.Mth; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.ChunkPos; -import net.minecraft.world.level.Explosion; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.phys.AABB; -import net.minecraft.world.phys.Vec3; -import net.minecraftforge.common.world.ForgeChunkManager; -import net.minecraftforge.network.NetworkHooks; -import net.minecraftforge.network.PlayMessages; -import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.compat.Mods; -import net.nuclearteam.createnuclear.foundation.utility.Maths; -import net.nuclearteam.createnuclear.compat.alexscave.AlexscaveCompat; -import net.nuclearteam.createnuclear.foundation.damageTypes.CNDamageSources; - -import java.util.List; -import java.util.Stack; - -public class NuclearExplosionEntity extends Entity { - - private boolean spawnedParticle = false; - private Stack destroyingChunks = new Stack<>(); - private static final EntityDataAccessor SIZE = SynchedEntityData.defineId(NuclearExplosionEntity.class, EntityDataSerializers.FLOAT); - private static final EntityDataAccessor NO_GRIEFING = SynchedEntityData.defineId(NuclearExplosionEntity.class, EntityDataSerializers.BOOLEAN); - private static final EntityDataAccessor INTENTIONAL_GAME_DESIGN = SynchedEntityData.defineId(NuclearExplosionEntity.class, EntityDataSerializers.BOOLEAN); - private boolean loadingChunks = false; - - private Explosion dummyExplosion; - - // Typed as Object (not AlexscaveCompat) so this field can exist even when Alex's Caves - // isn't installed and its classes are unavailable on the classpath - private Object alexscaveHandler; - - public NuclearExplosionEntity(EntityType entityType, Level level) { - super(entityType, level); - // Only instantiate the compat handler when the addon is actually loaded - if (Mods.ALEXS_CAVE.isLoaded()) { - this.alexscaveHandler = new AlexscaveCompat(); - } - } - - public NuclearExplosionEntity(PlayMessages.SpawnEntity spawnEntity, Level level) { - this(CNEntityType.NUCLEAR_EXPLOSION.get(), level); - this.setBoundingBox(this.makeBoundingBox()); - } - - @Override - public Packet getAddEntityPacket() { - return (Packet) NetworkHooks.getEntitySpawningPacket(this); - } - - public void tick() { - super.tick(); - int chunksAffected = getChunksAffected(); - int radius = chunksAffected * 15; - if (!spawnedParticle) { - spawnedParticle = true; - int particleY = (int) Math.ceil(this.getY()); - while (particleY > level().getMinBuildHeight() && particleY > this.getY() - radius / 2F && isDestroyable(level().getBlockState(BlockPos.containing(this.getX(), particleY, this.getZ())))) { - particleY--; - } - level().addAlwaysVisibleParticle(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD.get(), true, this.getX(), particleY + 2, this.getZ(), this.getSize(), isIntentionalGameDesign() ? 1.0F : 0.0F, 0); - } - if (tickCount > 40 && destroyingChunks.isEmpty()) { - this.remove(RemovalReason.DISCARDED); - } else { - if (!level().isClientSide && !isNoGriefing()) { - if (!loadingChunks && !this.isRemoved()) { - loadingChunks = true; - loadChunksAround(true); - } - if (destroyingChunks.isEmpty()) { - BlockPos center = this.blockPosition(); - int chunks = chunksAffected; - for (int i = -chunks; i <= chunks; i++) { - for (int j = -chunks; j <= chunks; j++) { - for (int k = -chunks; k <= chunks; k++) { - destroyingChunks.push(center.offset(i * 16, j * 16, k * 16)); - } - } - } - destroyingChunks.sort((blockPos1, blockPos2) -> Double.compare(blockPos2.distManhattan(this.blockPosition()), blockPos1.distManhattan(this.blockPosition()))); - } else { - int tickChunkCount = Math.min(destroyingChunks.size(), 3); - for (int i = 0; i < tickChunkCount; i++) { - removeChunk(radius); - } - } - } - AABB killBox = this.getBoundingBox().inflate(radius + radius * 0.5F, radius * 0.6, radius + radius * 0.5F); - float flingStrength = getSize() * 0.33F; - float maximumDistance = radius + radius * 0.5F + 1; - - for (LivingEntity entity : this.level().getEntitiesOfClass(LivingEntity.class, killBox)) { - float dist = entity.distanceTo(this); - float damage = calculateDamage(dist, maximumDistance); - Vec3 vec3 = entity.position().subtract(this.position()).add(0, 0.3, 0).normalize(); - float playerFling = entity instanceof Player ? 0.5F * flingStrength : flingStrength; - - if (damage > 0) { - // Raycat (Alex's Caves) is immune to the explosion - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - if (((AlexscaveCompat) alexscaveHandler).isRaycat(entity)) { - damage = 0; - } - } - - if (entity.getType().is(CNTags.CNEntityTags.IRRADIATED_IMMUNE.tag)) { - damage *= 0.25F; - playerFling *= 0.1F; - - // Tremorzilla (Alex's Caves) is fully immune, on top of the irradiated-immune reduction above - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - if (((AlexscaveCompat) alexscaveHandler).isTremorzilla(entity)) { - CreateNuclear.LOGGER.warn("Entity explosion compatibility with Alex's Cave"); - damage = 0; - playerFling = 0; - } - } - } - - if (damage > 0) { - entity.hurt(CNDamageSources.radiation(entity.level()), damage); - } - } - entity.setDeltaMovement(vec3.scale(damage * 0.1F * playerFling)); - } - } - } - - @Override - public void remove(Entity.RemovalReason removalReason) { - if (!level().isClientSide && loadingChunks) { - loadingChunks = false; - loadChunksAround(false); - } - super.remove(removalReason); - } - - - private int getChunksAffected() { - return (int) Math.ceil(this.getSize()); - } - - private void loadChunksAround(boolean load) { - if (this.level() instanceof ServerLevel serverLevel) { - ChunkPos chunkPos = new ChunkPos(this.blockPosition()); - int dist = Math.max(getChunksAffected(), serverLevel.getServer().getPlayerList().getViewDistance() / 2); - for (int i = -dist; i <= dist; i++) { - for (int j = -dist; j <= dist; j++) { - ForgeChunkManager.forceChunk(serverLevel, CreateNuclear.MOD_ID, this, chunkPos.x + i, chunkPos.z + j, load, load); - } - } - } - } - - private float calculateDamage(float dist, float max) { - float revert = (max - dist) / max; - float baseDmg = this.getSize() <= 1.5F ? 100 : 100 + (this.getSize() - 1.5F) * 400; - return revert * baseDmg; - } - - private void removeChunk(int radius) { - BlockPos chunkCorner = destroyingChunks.pop(); - BlockPos.MutableBlockPos carve = new BlockPos.MutableBlockPos(); - BlockPos.MutableBlockPos carveBelow = new BlockPos.MutableBlockPos(); - carve.set(chunkCorner); - carveBelow.set(chunkCorner); - float itemDropModifier = 0.025F / Math.min(1, this.getSize()); - - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null){ - boolean resBool = ((AlexscaveCompat) alexscaveHandler).ACResConfig(); - if (resBool) { - return; - } - } - - if (dummyExplosion == null) { - dummyExplosion = new Explosion(level(), null, this.getX(), this.getY(), this.getZ(), 10.0F, List.of()); - } - for (int x = 0; x < 16; x++) { - for (int z = 0; z < 16; z++) { - for (int y = 15; y >= 0; y--) { - boolean canSetToFire = false; - carve.set(chunkCorner.getX() + x, Mth.clamp(chunkCorner.getY() + y, level().getMinBuildHeight(), level().getMaxBuildHeight()), chunkCorner.getZ() + z); - float widthSimplexNoise1 = (Maths.sampleNoise3D(carve.getX(), carve.getY(), carve.getZ(), radius) - 0.5F) * 0.45F + 0.55F; - double yDist = Maths.smin(0.6F - Math.abs(this.blockPosition().getY() - carve.getY()) / (float) radius, 0.6F, 0.2F); - double distToCenter = carve.distToLowCornerSqr(this.blockPosition().getX(), carve.getY() - 1, this.blockPosition().getZ()); - double targetRadius = yDist * (radius + widthSimplexNoise1 * radius) * radius; - - if (distToCenter <= targetRadius) { - BlockState state = level().getBlockState(carve); - if ((!state.isAir() || !state.getFluidState().isEmpty()) && isDestroyable(state)) { - carveBelow.set(carve.getX(), carve.getY() - 1, carve.getZ()); - canSetToFire = true; - - // ALEX'S CAVES compatibility handling - boolean handledByAlex = false; - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null){ - handledByAlex = ((AlexscaveCompat) alexscaveHandler).MobSpawn(state, level(), carve, itemDropModifier, dummyExplosion); - } - - if (handledByAlex) continue; - - // 1. Create an immutable copy of the position - BlockPos immutablePos = carve.immutable(); - - // 2. Call the explosion behavior - state.onBlockExploded(level(), immutablePos, dummyExplosion); - - // 3. onBlockExploded() doesn't remove plain vanilla blocks (e.g. stone/dirt) by - // itself, so force removal here and let items drop normally - if (level().getBlockState(immutablePos).is(state.getBlock())) { - level().destroyBlock(immutablePos, true); - } - } - } - if (canSetToFire && random.nextFloat() < 0.15 && !level().getBlockState(carveBelow).isAir()) { - level().setBlockAndUpdate(carveBelow.above(), CNBlocks.ENRICHING_FIRE.get().defaultBlockState()); - } - } - } - } - } - - private boolean isDestroyable(BlockState state) { - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - return ((AlexscaveCompat) alexscaveHandler).ACDestroyable(state); - } - return !(state.getBlock().getExplosionResistance() >= 3600000); - } - - @Override - protected void defineSynchedData() { - this.entityData.define(SIZE, 1.0F); - this.entityData.define(NO_GRIEFING, false); - this.entityData.define(INTENTIONAL_GAME_DESIGN, false); - } - - public float getSize() { - return this.entityData.get(SIZE); - } - - public void setSize(float f) { - this.entityData.set(SIZE, f); - } - - public boolean isNoGriefing() { - return this.entityData.get(NO_GRIEFING); - } - - public void setNoGriefing(boolean noGriefing) { - this.entityData.set(NO_GRIEFING, noGriefing); - } - - public boolean isIntentionalGameDesign() { - return this.entityData.get(INTENTIONAL_GAME_DESIGN); - } - - public void setIntentionalGameDesign(boolean intentionalGameDesign) { - this.entityData.set(INTENTIONAL_GAME_DESIGN, intentionalGameDesign); - } - - - @Override - protected void readAdditionalSaveData(CompoundTag compoundTag) { - loadingChunks = compoundTag.getBoolean("WasLoadingChunks"); - } - - @Override - protected void addAdditionalSaveData(CompoundTag compoundTag) { - compoundTag.putBoolean("WasLoadingChunks", loadingChunks); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/CNFanProcessingTypes.java b/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/CNFanProcessingTypes.java index 9ed4d2e7d..c30917354 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/CNFanProcessingTypes.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/CNFanProcessingTypes.java @@ -11,7 +11,6 @@ import net.minecraft.core.particles.ParticleTypes; import net.minecraft.util.RandomSource; import net.minecraft.world.effect.MobEffectInstance; -import net.minecraft.world.effect.MobEffects; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.item.ItemStack; @@ -21,9 +20,6 @@ import net.nuclearteam.createnuclear.*; import net.nuclearteam.createnuclear.content.enriching.campfire.EnrichingCampfireBlock; import net.nuclearteam.createnuclear.content.kinetics.fan.processing.EnrichedRecipe.EnrichedWrapper; -import net.nuclearteam.createnuclear.content.kinetics.fan.processing.SnowPowderRecipe.SnowPowderWrapper; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; -import net.nuclearteam.createnuclear.foundation.damageTypes.CNDamageSources; import javax.annotation.Nullable; import java.util.List; @@ -33,14 +29,12 @@ @SuppressWarnings("unused") public class CNFanProcessingTypes { public static final EnrichedType ENRICHED = register("enriched", new EnrichedType()); - public static final SnowPowderType SNOW_POWDER = register("snow_powder", new SnowPowderType()); private static final Map LEGACY_NAME_MAP; static { Object2ReferenceOpenHashMap map = new Object2ReferenceOpenHashMap<>(); map.put("ENRICHED", ENRICHED); - map.put("SNOW_POWDER", SNOW_POWDER); map.trim(); LEGACY_NAME_MAP = map; } @@ -65,8 +59,6 @@ public static FanProcessingType parseLegacy(String str) { } public static class EnrichedType implements FanProcessingType { - private static final double FAN_ENRICHING_DOSE = 5.0D; - private static final EnrichedWrapper ENRICHED_WRAPPER = new EnrichedWrapper(); @Override @@ -121,65 +113,7 @@ public void morphAirFlow(AirFlowParticleAccess particleAccess, RandomSource rand @Override public void affectEntity(Entity entity, Level level) { if (entity instanceof LivingEntity livingEntity) { - RadiationCapability.applyContagion(livingEntity, FAN_ENRICHING_DOSE, 10); - livingEntity.hurt(CNDamageSources.fanRadiation(level), 1); - } - } - } - - public static class SnowPowderType implements FanProcessingType { - private static final SnowPowderWrapper SNOW_POWDER_WRAPPER = new SnowPowderWrapper(); - - @Override - public boolean isValidAt(Level level, BlockPos pos) { - BlockState state = level.getBlockState(pos); - return CNTags.CNBlockTags.FAN_PROCESSING_CATALYSTS_SNOW_POWDER.matches(state); - } - - @Override - public int getPriority() { - return 301; - } - - @Override - public boolean canProcess(ItemStack stack, Level level) { - SNOW_POWDER_WRAPPER.setItem(0, stack); - Optional recipe = CNRecipeTypes.SNOW_POWDER.find(SNOW_POWDER_WRAPPER, level); - return recipe.isPresent(); - } - - @Nullable - @Override - public List process(ItemStack stack, Level level) { - SNOW_POWDER_WRAPPER.setItem(0, stack); - Optional recipe = CNRecipeTypes.SNOW_POWDER.find(SNOW_POWDER_WRAPPER, level); - return recipe.map(snowPowderRecipe -> RecipeApplier.applyRecipeOn(level, stack, snowPowderRecipe, true)).orElse(null); - } - - @Override - public void spawnProcessingParticles(Level level, Vec3 pos) { - if (level.random.nextInt(8) != 0) return; - pos = pos.add(VecHelper.offsetRandomly(Vec3.ZERO, level.random, 1) - .multiply(1,0.5f,1) - .normalize() - .scale(0.15f) - ); - level.addParticle(ParticleTypes.SNOWFLAKE, pos.x, pos.y + .45f, pos.z, 0.0, 0.0, 0.0); - if (level.random.nextInt(2) != 0) level.addParticle(ParticleTypes.SNEEZE, pos.x, pos.y + .25f, pos.z, 0.0, 0.0, 0.0); - } - - @Override - public void morphAirFlow(AirFlowParticleAccess particleAccess, RandomSource random) { - particleAccess.setColor(Color.mixColors(0x0, 0x49FFFB, random.nextFloat())); - particleAccess.setAlpha(1f); - if (random.nextFloat() < 1 / 128f) particleAccess.spawnExtraParticle(ParticleTypes.SNOWFLAKE, .125f); - if (random.nextFloat() < 1 / 32f) particleAccess.spawnExtraParticle(ParticleTypes.SNEEZE, .125f); - } - - @Override - public void affectEntity(Entity entity, Level level) { - if (entity instanceof LivingEntity livingEntity) { - livingEntity.addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN, 10, 0, true, true)); + livingEntity.addEffect(new MobEffectInstance(CNEffects.RADIATION.get(), 10, 0, true, true)); } } } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/SnowPowderRecipe.java b/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/SnowPowderRecipe.java deleted file mode 100644 index 195ec73a1..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/kinetics/fan/processing/SnowPowderRecipe.java +++ /dev/null @@ -1,39 +0,0 @@ -package net.nuclearteam.createnuclear.content.kinetics.fan.processing; - -import com.simibubi.create.content.processing.recipe.ProcessingRecipe; -import com.simibubi.create.content.processing.recipe.ProcessingRecipeBuilder.ProcessingRecipeParams; -import net.minecraft.world.level.Level; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.items.wrapper.RecipeWrapper; -import net.nuclearteam.createnuclear.CNRecipeTypes; -import net.nuclearteam.createnuclear.content.kinetics.fan.processing.SnowPowderRecipe.SnowPowderWrapper; - -public class SnowPowderRecipe extends ProcessingRecipe { - public SnowPowderRecipe(ProcessingRecipeParams params) { - super(CNRecipeTypes.SNOW_POWDER, params); - } - - @Override - protected int getMaxInputCount() { - return 1; - } - - @Override - protected int getMaxOutputCount() { - return 12; - } - - @Override - public boolean matches(SnowPowderWrapper inv, Level worldIn) { - if (inv.isEmpty()) - return false; - return ingredients.get(0) - .test(inv.getItem(0)); - } - - public static class SnowPowderWrapper extends RecipeWrapper { - public SnowPowderWrapper() { - super(new ItemStackHandler(1)); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/logistics/BigFluidStack.java b/src/main/java/net/nuclearteam/createnuclear/content/logistics/BigFluidStack.java deleted file mode 100644 index 080af8299..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/logistics/BigFluidStack.java +++ /dev/null @@ -1,79 +0,0 @@ -package net.nuclearteam.createnuclear.content.logistics; - -import net.nuclearteam.createnuclear.api.ReactorFluidTypesValue; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.world.level.Level; -import net.minecraftforge.fluids.FluidStack; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; - -import javax.annotation.Nullable; -import java.util.Objects; - -public class BigFluidStack { - public static final int INF = 1_000_000_000; - - public FluidStack stack; - public int amount; - - public BigFluidStack(FluidStack stack) { - this(stack, 1); - } - - public BigFluidStack(FluidStack stack, int amount) { - this.stack = stack; - this.amount = amount; - } - - public CompoundTag write() { - CompoundTag tag = new CompoundTag(); - tag.put("Fluid", stack.writeToNBT(new CompoundTag())); - tag.putInt("Amount", amount); - - return tag; - } - - public static BigFluidStack read(CompoundTag tag) { - return new BigFluidStack(FluidStack.loadFluidStackFromNBT(tag.getCompound("Fluid")), tag.getInt("Amount")); - } - - public void send(FriendlyByteBuf buffer) { - buffer.writeFluidStack(stack); - buffer.writeVarInt(amount); - } - - public static BigFluidStack receive(FriendlyByteBuf buffer) { - return new BigFluidStack(buffer.readFluidStack(), buffer.readVarInt()); - } - - @Override - public boolean equals(final Object obj) { - if (obj == this) - return true; - if (obj instanceof BigFluidStack other) - return Objects.equals(stack, other.stack) && amount == other.amount; - return false; - } - - @Override - public int hashCode() { - return (nullHash(stack) * 31) ^ Integer.hashCode(amount); - } - - int nullHash(Object o) { - return o == null ? 0 : o.hashCode(); - } - - @Override - public String toString() { - return "(" + stack.getDisplayName() - .getString() + " x" + amount + ")"; - } - - public ReactorFluidType getFluidtype(@Nullable Level level) { - if (level == null) { - return ReactorFluidTypesValue.getReactorFluidType(this.stack.getFluid()); - } - return ReactorFluidType.resolveReactorFluidType(this.stack.getFluid(), level); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/CNMultiblock.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/CNMultiblock.java index aa5a5008c..e0dd7b60a 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/CNMultiblock.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/CNMultiblock.java @@ -12,76 +12,32 @@ public class CNMultiblock { public static final MultiBlockManagerBeta REGISTRATE_MULTIBLOCK = new MultiBlockManagerBeta<>(); - - private static final Predicate blockInWorldAPredicate = state -> - stateIs(CNBlocks.REACTOR_CASING.get()).test(state) - || stateIs(CNBlocks.REACTOR_OUTPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_ROD_INPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_FLUID_INPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_ALARM.get()).test(state) - ; + public static final String AAAAA = "AAAAA"; + public static final String AABAA = "AABAA"; + public static final String ADADA = "ADADA"; + public static final String BACAB = "BACAB"; + public static final String AAIAA = "AAIAA"; + public static final String AAAA = "AA*AA"; + public static final String AAOAA = "AAOAA"; static { - REGISTRATE_MULTIBLOCK.register("createnuclear:reactor5x5", - TypeMultiblock.REACTOR_T1, + REGISTRATE_MULTIBLOCK.register("createnuclear:reactor", + TypeMultiblock.REACTOR, SimpleMultiBlockAislePatternBuilder.start() - .aisle("OOOOO", "OAAAO", "OAAAO", "OAAAO", "OOOOO") - .aisle("OABAO", "ADDDA", "BDCDB", "ADDDA", "OABAO") - .aisle("OABAO", "ADDDA", "BDCDB", "ADDDA", "OABAO") - .aisle("OABAO", "ADDDA", "BDCDB", "ADDDA", "OA*AO") - .aisle("OABAO", "ADDDA", "BDCDB", "ADDDA", "OABAO") - .aisle("OABAO", "ADDDA", "BDCDB", "ADDDA", "OABAO") - .aisle("OOOOO", "OAAAO", "OAAAO", "OAAAO", "OOOOO") - .where('A', blockInWorldAPredicate) + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAIAA, ADADA, BACAB, ADADA, AAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAOAA) + .where('A', stateIs(CNBlocks.REACTOR_CASING.get())) .where('B', stateIs(CNBlocks.REACTOR_FRAME.get())) .where('C', stateIs(CNBlocks.REACTOR_CORE.get())) .where('D', stateIs(CNBlocks.REACTOR_COOLER.get())) .where('*', stateIs(CNBlocks.REACTOR_CONTROLLER.get())) - .where('O', stateIs(CNBlocks.REACTOR_CASING.get())) - .build() - ); - - REGISTRATE_MULTIBLOCK.register("createnuclear:reactor7x7", - TypeMultiblock.REACTOR_T2, - SimpleMultiBlockAislePatternBuilder.start() - .aisle("OOOOOOO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OOOOOOO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OAB*BAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OABABAO", "ADDDDDA", "BDCDCDB", "ADDDDDA", "BDCDCDB", "ADDDDDA", "OABABAO") - .aisle("OOOOOOO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OAAAAAO", "OOOOOOO") - .where('A', blockInWorldAPredicate) - .where('B', a -> a.getState().is(CNBlocks.REACTOR_FRAME.get())) - .where('C', a -> a.getState().is(CNBlocks.REACTOR_CORE.get())) - .where('D', a -> a.getState().is(CNBlocks.REACTOR_COOLER.get())) - .where('*', a -> a.getState().is(CNBlocks.REACTOR_CONTROLLER.get())) - .where('O', a -> a.getState().is(CNBlocks.REACTOR_CASING.get())) - .build() - ); - - REGISTRATE_MULTIBLOCK.register("createnuclear:reactor9x9", - TypeMultiblock.REACTOR_T3, - SimpleMultiBlockAislePatternBuilder.start() - .aisle("OOOOOOOOO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OOOOOOOOO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAA*AABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OBAABAABO", "BDDDDDDDB", "ADCDCDCDA", "ADDDDDDDA", "BDCDCDCDB", "ADDDDDDDA", "ADCDCDCDA", "BDDDDDDDB", "OBAABAABO") - .aisle("OOOOOOOOO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OAAAAAAAO", "OOOOOOOOO") - .where('A', blockInWorldAPredicate) - .where('B', a -> a.getState().is(CNBlocks.REACTOR_FRAME.get())) - .where('C', a -> a.getState().is(CNBlocks.REACTOR_CORE.get())) - .where('D', a -> a.getState().is(CNBlocks.REACTOR_COOLER.get())) - .where('*', a -> a.getState().is(CNBlocks.REACTOR_CONTROLLER.get())) - .where('O', a -> a.getState().is(CNBlocks.REACTOR_CASING.get())) + .where('O', stateIs(CNBlocks.REACTOR_OUTPUT.get())) + .where('I', stateIs(CNBlocks.REACTOR_INPUT.get())) .build() ); } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/IHeat.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/IHeat.java index c0c393274..bf56b3f1f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/IHeat.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/IHeat.java @@ -1,22 +1,15 @@ package net.nuclearteam.createnuclear.content.multiblock; import com.simibubi.create.content.equipment.wrench.IWrenchable; -import com.simibubi.create.content.logistics.BigItemStack; import com.simibubi.create.foundation.item.TooltipHelper; import com.simibubi.create.foundation.utility.CreateLang; import net.createmod.catnip.lang.Lang; import net.createmod.catnip.lang.LangBuilder; import net.minecraft.ChatFormatting; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; import net.nuclearteam.createnuclear.CNTags.CNItemTags; import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.ItemRodTypesValue; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; -import net.nuclearteam.createnuclear.infrastructure.config.CReactorHeat; public interface IHeat extends IWrenchable { enum HeatLevel { @@ -60,38 +53,21 @@ public int getHeatValue() { }; } - public static HeatLevel of(int heat, int reactorSize) { + public static HeatLevel of(int heat) { if (heat < 0) return NONE; heat = Math.abs(heat); - CReactorHeat config = CNConfigs.server().reactorHeat; - int danger = 1000; - - switch (reactorSize) { - case 5 -> danger = config.size5Danger.get(); - case 7 -> danger = config.size7Danger.get(); - case 9 -> danger = config.size9Danger.get(); - default -> danger = config.size5Danger.get(); - } - - int caution = (int) (danger * 0.75); - int warning = (int) (danger * 0.90); - - if (heat > 0 && heat < caution) return SAFETY; - if (heat >= caution && heat < warning) return CAUTION; - if (heat >= warning && heat <= danger) return WARNING; - if (heat > danger) return DANGER; + if (heat > 0 && heat < 500) return SAFETY; + if (heat >= 501 && heat <= 800) return CAUTION; + if (heat >= 801 && heat <= 1000) return WARNING; + if (heat >= 1001) return DANGER; return NONE; } - public static boolean isNotDanger(int heat, int reactorSize) { - return of(heat, reactorSize) != DANGER; - } - - public static LangBuilder getFormattedHeatText(int heat, int reactorSize) { - HeatLevel heatLevel = of(heat, reactorSize); + public static LangBuilder getFormattedHeatText(int heat) { + HeatLevel heatLevel = of(heat); LangBuilder builder = CreateLang.builder(CreateNuclear.MOD_ID).text(TooltipHelper.makeProgressBar(5, heatLevel.ordinal()+1)); builder.translate("tooltip.heatLevel." + Lang.asId(heatLevel.name())) @@ -109,24 +85,28 @@ public static LangBuilder getFormattedHeatText(int heat, int reactorSize) { return builder; } - public static LangBuilder getFormattedItemText(ItemStack itemRod, Boolean isEmpty, Level level) { + public static LangBuilder getFormattedItemText(ItemStack itemRod, Boolean IsEmpty) { LangBuilder builder = Lang.builder(CreateNuclear.MOD_ID); - String tooltip = TypeRodPredicate.tooltipKey(itemRod, level); + String tooltip = "unknown"; + + if (itemRod.is(CNItemTags.FUEL.tag)) { + tooltip = "uranium"; + } + + if (itemRod.is(CNItemTags.COOLER.tag)) { + tooltip = "graphene"; + } builder.translate("tooltip.item." + tooltip + ".rod") - // when it's empty, we show the number minus one to display zero because we fake the item count as 1 - .add(CreateNuclearLang.number(Math.abs((isEmpty ? itemRod.getCount() - 1 : itemRod.getCount())))) - .style(ChatFormatting.BLUE) + // when it's empty, we show the number minus one to display zero because we fake the item count as 1 + .add(CreateNuclearLang.number(Math.abs((IsEmpty ? itemRod.getCount() - 1 : itemRod.getCount())))) + .style(ChatFormatting.BLUE) ; return builder; } - public static LangBuilder getFormattedItemText(BigItemStack itemRod, Boolean isEmpty, Level level) { - return getFormattedItemText(new ItemStack(itemRod.stack.getItem(), itemRod.count), isEmpty, level); - } - public static LangBuilder getName(String name) { LangBuilder builder = CreateNuclearLang.builder(CreateNuclear.MOD_ID); builder.translate("gui." + name + ".info_header.title"); diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/MultiblockHelpers.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/MultiblockHelpers.java deleted file mode 100644 index 851292543..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/MultiblockHelpers.java +++ /dev/null @@ -1,67 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock; - -import net.minecraft.world.entity.LivingEntity; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; -import org.jetbrains.annotations.Nullable; - -import java.util.List; -import java.util.function.BiConsumer; - -public class MultiblockHelpers { - private static final ReactorPattern pattern = new ReactorPattern(); - - /** - * Utility helpers for handling multiblock placement and removal events. - * These helpers locate the controller for a given part position and - * invoke provided callbacks to register or remove parts. - */ - public static void handleOnPlace(BlockPos pos, Level level, BiConsumer register) { - BlockPos controllerPos = pattern.findControllerPos(pos, level, true); - if (controllerPos != null) { - ReactorControllerBlockEntity controllerBlockEntity = (ReactorControllerBlockEntity) level.getBlockEntity(controllerPos); - if (controllerBlockEntity != null) { - register.accept(controllerBlockEntity, pos); - } - } - } - - public static void handleRemoval(BlockPos pos, Level level, BiConsumer remover) { - BlockPos controllerPos = pattern.findControllerPos(pos, level, false); - if (controllerPos != null) { - ReactorControllerBlockEntity controllerBlockEntity = (ReactorControllerBlockEntity) level.getBlockEntity(controllerPos); - if (controllerBlockEntity != null) { - remover.accept(controllerBlockEntity, pos); - } - } - } - - public static ReactorControllerBlockEntity getControllerForPart(Level level, BlockPos pos) { - /** - * Returns the controller entity for the given part position, or null - * if no valid controller is found. - */ - BlockPos controllerPos = pattern.findControllerPos(pos, level); - if (controllerPos != null) { - return (ReactorControllerBlockEntity) level.getBlockEntity(controllerPos); - } - - return null; - } - - public static void handleAdvancedPlacedBy(BlockPos pos, Level level, @Nullable LivingEntity entity) { - if (entity == null) return; - - ReactorControllerBlockEntity controller = getControllerForPart(level, pos); - - if (controller != null) { - CNAdvancementBehaviour.setPlacedBy(level, controller.getBlockPos(), entity); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/ReactorAssembler.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/ReactorAssembler.java deleted file mode 100644 index a591c5fb9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/ReactorAssembler.java +++ /dev/null @@ -1,199 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock; - -import net.createmod.catnip.lang.LangBuilder; -import net.minecraft.ChatFormatting; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.sounds.SoundSource; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.levelgen.structure.BoundingBox; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CNSoundEvents; -import net.nuclearteam.createnuclear.api.multiblock.BlockPattern; -import net.nuclearteam.createnuclear.api.multiblock.TypeMultiblock; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.frame.ReactorFrameEntity; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInputEntity; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.foundation.utility.NotifyUtil; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -import java.util.ArrayList; -import java.util.List; - -public final class ReactorAssembler { - - public static final int configRadius = CNConfigs.server().notify.warningDistance.get(); - public static final boolean configWarnAll = CNConfigs.server().notify.warnAllPlayers.get(); - - private ReactorAssembler() {} - - public static void assemble(BlockPos pos, Level level) { - if (level.isClientSide) return; - - ReactorControllerBlockEntity entity = getBlockEntity(level, pos); - if (entity == null) return; - - BlockPattern result = CNMultiblock.REGISTRATE_MULTIBLOCK.findStructure(level, pos, entity); - if (result == null) return; - - // Captured before setAssembled(true) below: assemble() is also reached from - // ReactorPattern.findControllerPos on an already-assembled reactor, and only the - // actual not-assembled -> assembled transition should notify and play the cue. - boolean wasAssembled = entity.isAssembled(); - - sendMessageToPlayer(level, pos, CreateNuclearLang.translate("notification.reactor.assembled"), !wasAssembled); - - if (!wasAssembled) { - // Server-side (null player) so the one-shot broadcasts to nearby clients. - level.playSound(null, pos, CNSoundEvents.MOTOR_ASSEMBLE.getMainEvent(), SoundSource.BLOCKS, 1.0f, 1.0f); - } - - switch (result.data()) { - case REACTOR_T1 -> entity.getAdvancement().awardPlayer(CNAdvancement.T1_REACTOR); - case REACTOR_T2 -> entity.getAdvancement().awardPlayer(CNAdvancement.T2_REACTOR); - case REACTOR_T3 -> entity.getAdvancement().awardPlayer(CNAdvancement.T3_REACTOR); - } - - entity.setMultiblockSize(result.data().getSize()); - entity.setAssembled(true); - entity.setMultiblockStructure(ReactorAssembler.getStructureBound(pos, entity.getMultiblockSize(), entity.getMultiblockFacing())); - - findAndRegisterSpecialBlocks(entity.getMultiblockPos(), entity, level); - } - - public static void disassemble(BlockPos pos, Level level) { - if (level.isClientSide) return; - - ReactorControllerBlockEntity entity = getBlockEntity(level, pos); - if (entity == null || !entity.isAssembled()) return; - - BlockPattern result = CNMultiblock.REGISTRATE_MULTIBLOCK.findStructure(level, pos, entity); - if (result != null) return; - - sendMessageToPlayer(level, pos, CreateNuclearLang.translate("notification.reactor.disassembled"), true); - - // Both early returns above already guarantee this is a real assembled -> broken - // transition, so no extra guard is needed here. - level.playSound(null, pos, CNSoundEvents.MOTOR_DISASSEMBLE.getMainEvent(), SoundSource.BLOCKS, 1.0f, 1.0f); - - entity.setAssembled(false); - entity.removeIOAll(); - } - - public static void findAndRegisterSpecialBlocks(BoundingBox reactorPos, ReactorControllerBlockEntity entity, Level level) { - int xMin = reactorPos.minX(), xMax = reactorPos.maxX(); - int yMin = reactorPos.minY(), yMax = reactorPos.maxY(); - int zMin = reactorPos.minZ(), zMax = reactorPos.maxZ(); - - final Block reactorOutputBlock = CNBlocks.REACTOR_OUTPUT.get(); - final Block reactorRodInputBlock = CNBlocks.REACTOR_ROD_INPUT.get(); - final Block reactorInputFluidBlock = CNBlocks.REACTOR_FLUID_INPUT.get(); - final Block reactorAlarmBlock = CNBlocks.REACTOR_ALARM.get(); - final Block reactorFrameBlock = CNBlocks.REACTOR_FRAME.get(); - - BlockPos.MutableBlockPos mutablePos = new BlockPos.MutableBlockPos(); - - int frameMinY = Integer.MAX_VALUE; - int frameMaxY = Integer.MIN_VALUE; - - // Collected here and assigned their capacity after the scan: the reactor-size capacity is a - // single TOTAL shared across every fluid input, so we split it once we know how many there are. - List fluidInputs = new ArrayList<>(); - - for (int y = yMin; y <= yMax; y++) { - boolean isYBoundary = (y == yMin || y == yMax); - for (int x = xMin; x <= xMax; x++) { - boolean isXBoundary = (x == xMin || x == xMax); - for (int z = zMin; z <= zMax; z++) { - boolean isZBoundary = (z == zMin || z == zMax); - - if (!(isYBoundary || isXBoundary || isZBoundary)) continue; - - mutablePos.set(x, y, z); - BlockState blockState = level.getBlockState(mutablePos); - - if (blockState.is(reactorOutputBlock)) { - entity.addOutput(mutablePos.immutable()); - } else if (blockState.is(reactorRodInputBlock)) { - entity.addInput(mutablePos.immutable()); - } else if (blockState.is(reactorInputFluidBlock)) { - entity.addInputFluid(mutablePos.immutable()); - if (level.getBlockEntity(mutablePos) instanceof ReactorFluidInputEntity fluidInput) { - fluidInputs.add(fluidInput); - } - } else if (blockState.is(reactorAlarmBlock)) { - entity.addAlarm(mutablePos.immutable()); - } else if (blockState.is(reactorFrameBlock)) { - if (level.getBlockEntity(mutablePos) instanceof ReactorFrameEntity frame) { - frame.setController(entity.getBlockPos()); - } - frameMinY = Math.min(frameMinY, y); - frameMaxY = Math.max(frameMaxY, y); - } - } - } - } - - if (frameMinY != Integer.MAX_VALUE) { - entity.getFrameDisplayManager().setFrameColumn(frameMinY, frameMaxY, entity::notifyUpdate); - } - - distributeFluidInputCapacity(fluidInputs, entity.getMultiblockSize()); - } - - /** - * Splits the reactor-size total fluid capacity evenly across all fluid inputs so the combined - * max capacity always equals the configured value, regardless of how many inputs were placed. - * The integer remainder is spread one unit at a time over the first inputs so the sum stays exact. - */ - private static void distributeFluidInputCapacity(List fluidInputs, int reactorSize) { - int count = fluidInputs.size(); - if (count == 0) return; - - int total = ReactorFluidInputEntity.getCapacityForReactorSize(reactorSize); - int base = total / count; - int remainder = total % count; - - for (int i = 0; i < count; i++) { - fluidInputs.get(i).applyCapacity(base + (i < remainder ? 1 : 0)); - } - } - - private static ReactorControllerBlockEntity getBlockEntity(Level level, BlockPos pos) { - if (level.getBlockEntity(pos) instanceof ReactorControllerBlockEntity entity) { - return entity; - } - return null; - } - - private static void sendMessageToPlayer(Level level, BlockPos pos, LangBuilder component, boolean condition) { - if (!condition) return; - - NotifyUtil.sendActionBar(level, pos, - component, - ChatFormatting.GOLD, configRadius, configWarnAll - ); - } - - public static BoundingBox getStructureBound(BlockPos center, int size, Direction facing) { - int radius = (size - 1) / 2; - int height = radius + 1; - int depth = size - 1; - Direction into = facing.getOpposite(); - - int axisX = into.getStepX() * depth; - int axisZ = into.getStepZ() * depth; - - int minX = center.getX() + Math.min(0, axisX) - (axisX == 0 ? radius : 0); - int maxX = center.getX() + Math.max(0, axisX) + (axisX == 0 ? radius : 0); - int minZ = center.getZ() + Math.min(0, axisZ) - (axisZ == 0 ? radius : 0); - int maxZ = center.getZ() + Math.max(0, axisZ) + (axisZ == 0 ? radius : 0); - - return new BoundingBox(minX, center.getY() - height, minZ, - maxX, center.getY() + height, maxZ); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarm.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarm.java deleted file mode 100644 index a8d9eed86..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarm.java +++ /dev/null @@ -1,84 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.alarm; - -import com.simibubi.create.foundation.block.IBE; -import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.context.BlockPlaceContext; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.StateDefinition; -import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import net.minecraft.world.level.block.state.properties.BooleanProperty; -import net.nuclearteam.createnuclear.CNBlockEntityTypes; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; - -import javax.annotation.Nullable; - -public class ReactorAlarm extends Block implements IBE { - public static final BooleanProperty POWERED = BlockStateProperties.POWERED; - protected ReactorPattern pattern = new ReactorPattern(); - - public ReactorAlarm(Properties props) { - super(props); - this.registerDefaultState(this.defaultBlockState().setValue(POWERED, false)); - } - - // Registers this alarm with the multiblock controller when placed - @Override - public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean isMoving) { - super.onPlace(state, level, pos, oldState, isMoving); - MultiblockHelpers.handleOnPlace(pos, level, ReactorControllerBlockEntity::addAlarm); - } - - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); - } - - // Unregisters this alarm from the multiblock controller on removal (piston, explosion, etc.) - @Override - public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean isMoving) { - if (!state.is(newState.getBlock())) { - MultiblockHelpers.handleRemoval(pos, level, ReactorControllerBlockEntity::removeAlarm); - super.onRemove(state, level, pos, newState, isMoving); - } - } - - @Override - public BlockState getStateForPlacement(BlockPlaceContext ctx) { - return this.defaultBlockState().setValue(POWERED, ctx.getLevel().hasNeighborSignal(ctx.getClickedPos())); - } - - @Override - public void neighborChanged(BlockState state, Level level, BlockPos pos, Block block, BlockPos fromPos, boolean isMoving) { - if (level.isClientSide) return; - boolean poweredNow = level.hasNeighborSignal(pos); - if (state.getValue(POWERED) != poweredNow) { - level.setBlock(pos, state.setValue(POWERED, poweredNow), 3); - } - } - - @Override - protected void createBlockStateDefinition(StateDefinition.Builder builder) { - builder.add(POWERED); - } - - @Override - public Class getBlockEntityClass() { - return ReactorAlarmEntity.class; - } - - @Override - public BlockEntityType getBlockEntityType() { - return CNBlockEntityTypes.REACTOR_ALARM.get(); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmEntity.java deleted file mode 100644 index 4e63a7554..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmEntity.java +++ /dev/null @@ -1,101 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.alarm; - -import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; -import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; -import net.minecraft.client.Minecraft; -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.CNSoundEvents; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; - -import java.util.List; - -public class ReactorAlarmEntity extends SmartBlockEntity { - - public ReactorControllerBlockEntity controller = null; - private CNAdvancementBehaviour advancement; - private boolean advancementAwarded = false; // Prevents repeatedly awarding the advancement on every tick - - @OnlyIn(Dist.CLIENT) - protected ReactorAlarmSoundInstance soundInstance; - - public ReactorAlarmEntity(BlockEntityType type, BlockPos pos, BlockState state) { - super(type, pos, state); - } - - @Override - public void tick() { - super.tick(); - if (level == null || !(getBlockState().getBlock() instanceof ReactorAlarm)) return; - - if (level.isClientSide) { - tickAudio(); // DistExecutor is unnecessary here; the level-side check is enough and avoids thread overhead - } else { - tickServer(); - } - } - - @OnlyIn(Dist.CLIENT) - protected void tickAudio() { - BlockState state = getBlockState(); - boolean powered = state.hasProperty(ReactorAlarm.POWERED) && state.getValue(ReactorAlarm.POWERED); - - if (!powered) { - stopSound(); - return; - } - - if (soundInstance == null || soundInstance.isStopped()) { - Minecraft minecraft = Minecraft.getInstance(); - try { - soundInstance = new ReactorAlarmSoundInstance(level, worldPosition, CNSoundEvents.REACTOR_ALARM_LOOP.getMainEvent()); - minecraft.getSoundManager().play(soundInstance); - } catch (Exception e) { - CreateNuclear.LOGGER.warn("Failed to start alarm sound: " + e.getMessage()); - } - } - } - - @OnlyIn(Dist.CLIENT) - private void stopSound() { - if (soundInstance != null) { - try { - soundInstance.fadeOut(); - } catch (Exception e) { - CreateNuclear.LOGGER.warn("Error while stopping the sound: " + e.getMessage()); - } - soundInstance = null; - } - } - - private void tickServer() { - BlockState state = getBlockState(); - if (!(state.getBlock() instanceof ReactorAlarm)) return; - - boolean powered = state.getValue(ReactorAlarm.POWERED); - - if (powered) { - if (!advancementAwarded) { // Award it only once, on the rising edge - this.advancement.awardPlayer(CNAdvancement.SILENCE_THE_CORE); - advancementAwarded = true; - } - } else { - advancementAwarded = false; // Reset when the alarm turns off - } - } - - @Override - public void addBehaviours(List behaviours) { - behaviours.add(advancement = new CNAdvancementBehaviour(this, CNAdvancement.SILENCE_THE_CORE)); - } - - public void setController(ReactorControllerBlockEntity controller) { - this.controller = controller; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmSoundInstance.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmSoundInstance.java deleted file mode 100644 index 04793cd64..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/alarm/ReactorAlarmSoundInstance.java +++ /dev/null @@ -1,50 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.alarm; - -import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; -import net.minecraft.core.BlockPos; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundSource; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.CreateNuclear; - -public class ReactorAlarmSoundInstance extends AbstractTickableSoundInstance { - private final BlockPos pos; - private final Level level; - - public ReactorAlarmSoundInstance(Level level, BlockPos pos, SoundEvent sound) { - super(sound, SoundSource.BLOCKS, level != null ? level.random : null); - this.level = level; - this.pos = pos; - if (pos != null) { - this.x = pos.getX(); - this.y = pos.getY(); - this.z = pos.getZ(); - } - this.looping = true; - this.delay = 0; - this.volume = 10F; - } - - @Override - public void tick() { - try { - if (level == null || pos == null) { - stop(); - return; - } - - BlockState state = level.getBlockState(pos); - if (!(state.getBlock() instanceof ReactorAlarm)) { - stop(); - } - } catch (Exception e) { - stop(); - CreateNuclear.LOGGER.warn(e.getMessage()); - } - } - - public void fadeOut() { - stop(); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItem.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItem.java index eb7ae1dd6..b0069fddf 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItem.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItem.java @@ -1,11 +1,8 @@ package net.nuclearteam.createnuclear.content.multiblock.bluePrintItem; -import net.minecraft.ChatFormatting; import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.chat.ClickEvent; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; @@ -16,7 +13,6 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.Level; import net.minecraftforge.items.ItemStackHandler; @@ -25,7 +21,6 @@ import org.jetbrains.annotations.Nullable; import javax.annotation.ParametersAreNonnullByDefault; -import java.util.List; @ParametersAreNonnullByDefault @MethodsReturnNonnullByDefault @@ -35,18 +30,6 @@ public ReactorBluePrintItem(Properties properties) { super(properties); } - @Override - public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltip, TooltipFlag flag) { - super.appendHoverText(stack, level, tooltip, flag); - - tooltip.add(Component.translatable("item.createnuclear.reactor_blueprint.tooltip") - .withStyle(ChatFormatting.GRAY)); - - // Adjust the tooltip text to hint at the available action - tooltip.add(Component.translatable("item.createnuclear.reactor_blueprint.tooltip_hint") - .withStyle(ChatFormatting.DARK_GRAY)); - } - @Override public Component getDisplayName() { return Component.translatable("reactor.item.gui.name"); @@ -69,26 +52,14 @@ public InteractionResult useOn(UseOnContext context) { public InteractionResultHolder use(Level world, Player player, InteractionHand hand) { ItemStack heldItem = player.getItemInHand(hand); - // Plain right-click -> Opens the Blueprint screen if (!player.isShiftKeyDown() && hand == InteractionHand.MAIN_HAND) { if (!world.isClientSide && player instanceof ServerPlayer) NetworkHooks.openScreen((ServerPlayer) player, this, buf -> buf.writeItem(heldItem)); return InteractionResultHolder.success(heldItem); } - // Shift + right-click -> Sends a clickable link in chat! else if (player.isShiftKeyDown() && hand == InteractionHand.MAIN_HAND) { - if (!world.isClientSide) { - MutableComponent message = Component.translatable("item.createnuclear.reactor_blueprint.chat_info") - .withStyle(ChatFormatting.GREEN) - .append(" ") - .append(Component.translatable("item.createnuclear.reactor_blueprint.wiki_link") - .withStyle(style -> style - .withColor(ChatFormatting.AQUA) - .withUnderlined(true) - .withClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://wiki.createnuclear.net/wiki/block&items/reactor_blueprint_item")) - )); - - player.sendSystemMessage(message); + if (!world.isClientSide && player instanceof ServerPlayer) { + NetworkHooks.openScreen((ServerPlayer) player, this, buf -> buf.writeItem(heldItem)); } return InteractionResultHolder.success(heldItem); } @@ -104,4 +75,4 @@ public static ItemStackHandler getItemStorage(ItemStack stack) { newInv.deserializeNBT(invNBT); return newInv; } -} +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemPacket.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemPacket.java index 128045c99..f8657d55e 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemPacket.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemPacket.java @@ -11,20 +11,22 @@ public class ReactorBluePrintItemPacket extends SimplePacketBase { private final CompoundTag tag; private final float heat; - private final int coolerTime; - private final int fuelTime; - private final int countCoolerRod; - private final int countFuelRod; - private final double progress; + private final int graphiteTime; + private final int uraniumTime; + private final int countGraphiteRod; + private final int countUraniumRod; + private double progress; - public ReactorBluePrintItemPacket(CompoundTag tag, float heat, int coolerTime, int fuelTime, int countCoolerRod, int countFuelRod) { + private static double totalInit; + + public ReactorBluePrintItemPacket(CompoundTag tag, float heat, int graphiteTime, int uraniumTime, int countGraphiteRod, int countUraniumRod) { this.tag = tag; this.heat = heat; - this.coolerTime = coolerTime; - this.fuelTime = fuelTime; - this.countCoolerRod = countCoolerRod; - this.countFuelRod = countFuelRod; - this.progress = calculatePostgres(coolerTime, countCoolerRod, fuelTime, countFuelRod); + this.graphiteTime = graphiteTime; + this.uraniumTime = uraniumTime; + this.countGraphiteRod = countGraphiteRod; + this.countUraniumRod = countUraniumRod; + this.progress = calculatePostgres(graphiteTime, countGraphiteRod, uraniumTime, countUraniumRod); } public ReactorBluePrintItemPacket(CompoundTag tag) { @@ -32,16 +34,17 @@ public ReactorBluePrintItemPacket(CompoundTag tag) { } public ReactorBluePrintItemPacket(float heat) { - this(new CompoundTag(), heat, 3600, 5000, 0, 0); + this(new CompoundTag(), heat, 3600,5000, 0, 0); } - public ReactorBluePrintItemPacket(int coolerTime, int fuelTime, int countCoolerRod, int countFuelRod) { - this(new CompoundTag(), 0f, coolerTime, fuelTime, countCoolerRod, countFuelRod); + public ReactorBluePrintItemPacket(int graphiteTime, int uraniumTime, int countGraphiteRod, int countUraniumRod) { + this(new CompoundTag(), 0f, graphiteTime, uraniumTime, countGraphiteRod, countUraniumRod); } public ReactorBluePrintItemPacket(FriendlyByteBuf buf) { this(buf.readNbt(), buf.readFloat(), buf.readInt(), buf.readInt(), buf.readInt(), buf.readInt()); + this.progress = buf.readDouble(); } @@ -49,10 +52,13 @@ public ReactorBluePrintItemPacket(FriendlyByteBuf buf) { public void write(FriendlyByteBuf buffer) { buffer.writeNbt(tag); buffer.writeFloat(heat); - buffer.writeInt(coolerTime); - buffer.writeInt(fuelTime); - buffer.writeInt(countCoolerRod); - buffer.writeInt(countFuelRod); + buffer.writeInt(graphiteTime); + buffer.writeInt(uraniumTime); + buffer.writeInt(countGraphiteRod); + buffer.writeInt(countUraniumRod); + buffer.writeDouble(progress); + + totalInit = calculateTotalInit(countUraniumRod, countGraphiteRod); } @Override @@ -60,10 +66,10 @@ public boolean handle(NetworkEvent.Context context) { context.enqueueWork(() -> { ServerPlayer player = context.getSender(); if (player == null || !(player.containerMenu instanceof ReactorBluePrintMenu c)) return; - c.countFuelRod = this.countFuelRod; - c.countCooledRod = this.countCoolerRod; - c.fuelTime = this.fuelTime; - c.coolerTime = this.coolerTime; + c.countUraniumRod = this.countUraniumRod; + c.countGraphiteRod = this.countGraphiteRod; + c.graphiteTime = this.graphiteTime; + c.uraniumTime = this.uraniumTime; c.progress = this.progress; c.heat = this.heat; c.sendUpdate = true; @@ -71,19 +77,16 @@ public boolean handle(NetworkEvent.Context context) { return true; } - public static double calculatePostgres(int coolerTime, int countCoolerRod, int fuelTime, int countFuelRod) { - double coolerTotal = Math.pow(coolerTime, countCoolerRod); - double fuelTotal = Math.pow(fuelTime, countFuelRod); - double total = coolerTotal + fuelTotal; + public static double calculatePostgres(int a, int a_exp, int b, int b_exp) { + double a2 = Math.pow(a, a_exp); + double b2 = Math.pow(b, b_exp); + double total = a2 + b2; - double totalInit = calculateTotalInit(countCoolerRod, countFuelRod); - if (totalInit == 0 || Double.isNaN(totalInit)) return 0; - return total / totalInit; + if (Double.isNaN(totalInit)) return total/calculateTotalInit(a, b); + else return total/totalInit; } - public static double calculateTotalInit(int countCoolerRod, int countFuelRod) { - // We assume 3600 and 5000 as base fallback times for initialization if needed. - // It should ideally use the actual base times from config, but this works for now. - return Math.pow(3600, countCoolerRod) + Math.pow(5000, countFuelRod); + public static double calculateTotalInit(int a, int b) { + return Math.pow(3600, a) + Math.pow(5000, b); } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemScreen.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemScreen.java index 7bd9d5582..abd2a021b 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemScreen.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintItemScreen.java @@ -39,7 +39,7 @@ protected void renderBg(GuiGraphics guiGraphics, float partialTick, int mouseX, BG.render(guiGraphics, x+23, y-19); renderPlayerInventory(guiGraphics, x+23, y+175); - guiGraphics.drawString(font, title, x+26, y-12, 0x592424, false); // renders the screen title + guiGraphics.drawString(font, title, x+26, y-12, 0x592424, false); //ici pour le titre } @@ -50,19 +50,23 @@ protected void containerTick() { menu.player.closeContainer(); } + float coef = 0.1F; + CompoundTag tag = menu.contentHolder.getOrCreateTag(); - if (tag.contains("pattern")) { - sendValueUpdate(tag, tag.getFloat("heat"), - tag.getInt("coolerTime"), - tag.getInt("fuelTime"), - tag.getInt("countCoolerRod"), - tag.getInt("countFuelRod") - ); - } + + sendValueUpdate(tag, coef, + tag.getInt("graphiteTime"), + tag.getInt("uraniumTime"), + tag.getInt("countUraniumRod"), + tag.getInt("countGraphiteRod")+3 + ); + + } - private static void sendValueUpdate(CompoundTag tag, float heat, int coolerTime, int fuelTime, int countCoolerRod, int countFuelRod) { - CNPackets.getChannel().sendToServer(new ReactorBluePrintItemPacket(tag, heat, coolerTime, fuelTime, countCoolerRod, countFuelRod)); + private static void sendValueUpdate(CompoundTag tag, float heat, int graphiteTime, int uraniumTime, int countGraphiteRod, int countUraniumRod) { + CNPackets.getChannel() + .sendToServer(new ReactorBluePrintItemPacket(tag, heat, graphiteTime, uraniumTime, countGraphiteRod, countGraphiteRod)); } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintMenu.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintMenu.java index 36d8d66f6..a6406ae2f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintMenu.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/bluePrintItem/ReactorBluePrintMenu.java @@ -11,23 +11,20 @@ import net.minecraft.world.item.Items; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.items.SlotItemHandler; import net.nuclearteam.createnuclear.CNMenus; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRod; +import net.nuclearteam.createnuclear.CNTags; import static net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItem.getItemStorage; public class ReactorBluePrintMenu extends GhostItemMenu { - public int countFuelRod = 0; - public int countCooledRod = 0; - public int fuelTime = 0; - public int coolerTime = 0; + public float heat = 0F; + public int graphiteTime = 5000; + public int uraniumTime = 3600; + public int countGraphiteRod = 0; + public int countUraniumRod = 0; public double progress = 0; - public float heat = 0; - public double totalInit = 0; + public boolean sendUpdate = false; public ReactorBluePrintMenu(MenuType type, int id, Inventory inv, FriendlyByteBuf extraData) { @@ -60,17 +57,16 @@ protected void initAndReadInventory(ItemStack contentHolder) { } } - contentHolder.getOrCreateTag().putInt("fuelTime", 0); - contentHolder.getOrCreateTag().putInt("coolerTime", 0); - contentHolder.getOrCreateTag().putInt("countCoolerRod", 0); - contentHolder.getOrCreateTag().putInt("countFuelRod", 0); - contentHolder.getOrCreateTag().putInt("totalHeatRatio", 0); + contentHolder.getOrCreateTag().putInt("uraniumTime", 3600); + contentHolder.getOrCreateTag().putInt("graphiteTime", 5000); + contentHolder.getOrCreateTag().putInt("countGraphiteRod", 0); + contentHolder.getOrCreateTag().putInt("countUraniumRod", 0); ghostInventory.deserializeNBT(tag.getCompound("pattern")); } @Override - protected ItemStackHandler createGhostInventory() { + protected net.minecraftforge.items.ItemStackHandler createGhostInventory() { return getItemStorage(contentHolder); } @@ -104,70 +100,31 @@ private void addPatternSlots() { }; for (int[] pos : positions) {// up and down not middle - this.addSlot(new SlotItemHandler(ghostInventory,i, startWidth + incr * pos[0], startHeight + incr * pos[1])); + this.addSlot(new net.minecraftforge.items.SlotItemHandler(ghostInventory,i, startWidth + incr * pos[0], startHeight + incr * pos[1])); i++; } } @Override protected void saveData(ItemStack contentHolder) { - countFuelRod = 0; - countCooledRod = 0; - int totalRatio = 0; - int totalFuelTime = 0; - int totalCoolerTime = 0; - for (int i = 0; i < ghostInventory.getSlots(); i++) { - ItemStack stack = ghostInventory.getStackInSlot(i); - if (stack == null || stack.isEmpty()) { - ghostInventory.setStackInSlot(i, ItemStack.EMPTY); - continue; - } - - RodType typeRod = RodType.resolveRodType(stack.getItem(), playerInventory.player.level()); - - boolean isFuel = typeRod.type() == TypeRod.FUEL; - boolean isCooler = typeRod.type() == TypeRod.COOLER; - - if (isCooler) { - countCooledRod++; - totalCoolerTime += typeRod.rodTimer().get(); - } - if (isFuel) { - countFuelRod++; - totalFuelTime += typeRod.rodTimer().get(); - } - - if (isCooler || isFuel) { - totalRatio += typeRod.ratio().get(); - } + if (ghostInventory.getStackInSlot(i).isEmpty() || ghostInventory.getStackInSlot(i) == null) ghostInventory.setStackInSlot(i, ItemStack.EMPTY); + if (!(ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.FUEL.tag) || ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.COOLER.tag))&& !ghostInventory.getStackInSlot(i).isEmpty()) ghostInventory.setStackInSlot(i, ItemStack.EMPTY); + if (ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.COOLER.tag)) countGraphiteRod += 1; + if (ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.FUEL.tag)) countUraniumRod += 1; } contentHolder.getOrCreateTag().put("pattern", ghostInventory.serializeNBT()); - contentHolder.getOrCreateTag().putInt("countCoolerRod", countCooledRod); - contentHolder.getOrCreateTag().putInt("countFuelRod", countFuelRod); - contentHolder.getOrCreateTag().putInt("totalRatio", totalRatio); - contentHolder.getOrCreateTag().putInt("fuelTime", countFuelRod > 0 ? totalFuelTime / countFuelRod : 0); - contentHolder.getOrCreateTag().putInt("coolerTime", countCooledRod > 0 ? totalCoolerTime / countCooledRod : 0); + contentHolder.getOrCreateTag().putInt("countGraphiteRod", countGraphiteRod); + contentHolder.getOrCreateTag().putInt("countUraniumRod", countUraniumRod); for (int i = 0; i < ghostInventory.getSlots(); i++) { - ItemStack stack = ghostInventory.getStackInSlot(i); - if (stack == null || stack.isEmpty()) { - ghostInventory.setStackInSlot(i, new ItemStack(Items.GLASS_PANE)); - continue; - } - - RodType typeRod = RodType.resolveRodType(stack.getItem(), playerInventory.player.level()); - - boolean isFuel = typeRod.type() == TypeRod.FUEL; - boolean isCooler = typeRod.type() == TypeRod.COOLER; - - if (!(isFuel || isCooler)) { - ghostInventory.setStackInSlot(i, new ItemStack(Items.GLASS_PANE)); - } + if (ghostInventory.getStackInSlot(i).isEmpty() || ghostInventory.getStackInSlot(i) == null) ghostInventory.setStackInSlot(i, new ItemStack(Items.GLASS_PANE)); + if (!(ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.FUEL.tag) || ghostInventory.getStackInSlot(i).is(CNTags.CNItemTags.COOLER.tag))&& !ghostInventory.getStackInSlot(i).isEmpty()) ghostInventory.setStackInSlot(i, new ItemStack(Items.GLASS_PANE)); } contentHolder.getOrCreateTag().put("patternAll", ghostInventory.serializeNBT()); + } protected int getPlayerInventoryXOffset() { diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasing.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasing.java index 048aa90be..cbdee8616 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasing.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasing.java @@ -4,11 +4,11 @@ import com.simibubi.create.foundation.block.IBE; import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; import net.minecraft.network.chat.Component; import net.minecraft.util.StringRepresentable; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.UseOnContext; @@ -20,21 +20,20 @@ import net.minecraft.world.level.block.state.BlockState; import net.nuclearteam.createnuclear.CNBlockEntityTypes; import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInput; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInput; import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; import javax.annotation.Nullable; import javax.annotation.ParametersAreNonnullByDefault; +import java.util.List; @ParametersAreNonnullByDefault @MethodsReturnNonnullByDefault @SuppressWarnings({"deprecation", "unused"}) public class ReactorCasing extends Block implements IWrenchable, IBE { private final TypeBlock typeBlock; - protected ReactorPattern pattern = new ReactorPattern(); public ReactorCasing(Properties properties, TypeBlock tBlock) { super(properties); @@ -45,20 +44,22 @@ public ReactorCasing(Properties properties, TypeBlock tBlock) { @Override // Called when the block is placed on the world public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { super.onPlace(state, level, pos, oldState, movedByPiston); - // change nearby chunks' biomes to the mod biome (radius in blocks) - pattern.findController(pos, level, true); + List players = level.players(); + FindController(pos, level, players, true); } - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); + @Override // called when the player destroys the block, with or without a tool + public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { + super.playerDestroy(level, player, pos, state, blockEntity, tool); + List players = level.players(); + FindController(pos, level, players, false); } @Override public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean movedByPiston) { super.onRemove(state, level, pos, newState, movedByPiston); - pattern.findController(pos, level, false); + List players = level.players(); + FindController(pos, level, players, false); } @Override @@ -68,12 +69,34 @@ public InteractionResult onWrenched(BlockState state, UseOnContext context) { Player player = context.getPlayer(); if (player.getItemInHand(InteractionHand.OFF_HAND).is(Blocks.HOPPER.asItem())) { - level.setBlock(pos, CNBlocks.REACTOR_ROD_INPUT.getDefaultState().setValue(ReactorRodInput.FACING, context.getClickedFace()), 2); + level.setBlock(pos, CNBlocks.REACTOR_INPUT.getDefaultState().setValue(ReactorInput.FACING, context.getClickedFace()), 2); player.sendSystemMessage(Component.translatable("reactor.update.casing.input")); } return InteractionResult.SUCCESS; } + // En attendant le controller pour verifier le pattern + public ReactorControllerBlock FindController(BlockPos blockPos, Level level, List players, boolean first){ // Function that checks the surrounding blocks in order + BlockPos newBlock; // to find the controller and verify the pattern + Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + for (int y = pos.getY()-3; y != pos.getY()+4; y+=1) { + for (int x = pos.getX()-5; x != pos.getX()+5; x+=1) { + for (int z = pos.getZ()-5; z != pos.getZ()+5; z+=1) { + newBlock = new BlockPos(x, y, z); + if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get())) { // verifying the pattern + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(newBlock).getBlock(); + controller.Verify(level.getBlockState(newBlock), newBlock, level, players, first); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, newBlock); + if (entity.created) { + return controller; + } + } + } + } + } + return null; + } + @Override public Class getBlockEntityClass() { return ReactorCasingEntity.class; diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasingEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasingEntity.java index 10eed24d2..bd9dc73c9 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasingEntity.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/casing/ReactorCasingEntity.java @@ -10,11 +10,23 @@ public class ReactorCasingEntity extends SmartBlockEntity { + protected BlockPos controller; + public ReactorCasingEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); + setController(pos); } @Override public void addBehaviours(List behaviours) { } + + public void setController(BlockPos pos) { + controller = new BlockPos(pos.getX()+4, pos.getY(), pos.getZ()+4); + } + + public BlockPos getController() { + return controller; + } + } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/EventTriggerPacket.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/EventTriggerPacket.java new file mode 100644 index 000000000..77cb368c8 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/EventTriggerPacket.java @@ -0,0 +1,34 @@ +package net.nuclearteam.createnuclear.content.multiblock.controller; + +import com.simibubi.create.foundation.networking.SimplePacketBase; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraftforge.network.NetworkEvent; +import net.nuclearteam.createnuclear.foundation.events.overlay.EventTextOverlay; + +/** + * Packet sent from server to client to trigger a localized event overlay. + */ +public class EventTriggerPacket extends SimplePacketBase { + // Duration in ticks for which the overlay should be displayed + private final int duration; + + public EventTriggerPacket(int duration) { + this.duration = duration; + } + + // Decoder constructor + public EventTriggerPacket(FriendlyByteBuf buffer) { + this(buffer.readInt()); + } + + @Override + public void write(FriendlyByteBuf buffer) { + buffer.writeInt(duration); + } + + @Override + public boolean handle(NetworkEvent.Context context) { + context.enqueueWork(() -> EventTextOverlay.triggerEvent(duration)); + return true; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlock.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlock.java index 5dc6423d8..e9fd5cc1b 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlock.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlock.java @@ -6,16 +6,11 @@ import net.minecraft.ChatFormatting; import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; @@ -25,39 +20,31 @@ import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.phys.BlockHitResult; -import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.ReactorAssembler; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.PersistentFluidLocks; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; +import net.nuclearteam.createnuclear.CNBlockEntityTypes; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.CNItems; +import net.nuclearteam.createnuclear.content.multiblock.CNMultiblock; +import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutput; +import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputEntity; import net.nuclearteam.createnuclear.foundation.block.HorizontalDirectionalReactorBlock; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.foundation.utility.NotifyUtil; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; import javax.annotation.Nullable; import javax.annotation.ParametersAreNonnullByDefault; +import java.util.List; @MethodsReturnNonnullByDefault @ParametersAreNonnullByDefault @SuppressWarnings("deprecation") public class ReactorControllerBlock extends HorizontalDirectionalReactorBlock implements IWrenchable, IBE { public static final BooleanProperty ASSEMBLED = BooleanProperty.create("assembled"); - public static final BooleanProperty ACTIVE = BooleanProperty.create("active"); public ReactorControllerBlock(Properties properties) { super(properties); - this.registerDefaultState(this.stateDefinition.any() - .setValue(FACING, Direction.NORTH) - .setValue(ASSEMBLED, false) - .setValue(ACTIVE, false) // Inactive by default - ); } @Override protected void createBlockStateDefinition(StateDefinition.Builder builder) { - builder.add(FACING).add(ASSEMBLED).add(ACTIVE); + builder.add(FACING).add(ASSEMBLED); super.createBlockStateDefinition(builder); } @@ -65,21 +52,12 @@ protected void createBlockStateDefinition(StateDefinition.Builder be.created = false); } @Override @@ -91,47 +69,35 @@ public InteractionResult use(BlockState state, Level worldIn, BlockPos pos, Play if (!(blockEntity instanceof ReactorControllerBlockEntity controllerBlockEntity)) return InteractionResult.PASS; ItemStack heldItem = player.getItemInHand(handIn); - if (heldItem.is(Items.DEBUG_STICK)) { - withBlockEntityDo(worldIn, pos, be -> be.logReactorConnections(player)); - } if (!state.getValue(ASSEMBLED)) { + player.sendSystemMessage(Component.translatable("reactor.info.assembled.none").withStyle(ChatFormatting.RED)); } else { - if (heldItem.is(CNItems.REACTOR_BLUEPRINT.get()) && controllerBlockEntity.getInventoryObject().getItem(0).isEmpty() && heldItem.getTag() != null){ + if (heldItem.is(CNItems.REACTOR_BLUEPRINT.get()) && controllerBlockEntity.inventory.getItem(0).isEmpty()){ withBlockEntityDo(worldIn, pos, be -> { - be.getInventoryObject().setStackInSlot(0, heldItem); - be.setConfiguredPattern(heldItem); + be.inventory.setStackInSlot(0, heldItem); + be.configuredPattern = heldItem; player.setItemInHand(handIn, ItemStack.EMPTY); }); - // Inserting the blueprint is what starts energy production: this is the activation - // cue, not the multiblock assembly one (that lives in ReactorAssembler). - // One-shot played server-side (null player) so it broadcasts to nearby clients. - worldIn.playSound(null, pos, CNSoundEvents.REACTOR_ACTIVATION.getMainEvent(), SoundSource.BLOCKS, 1.0f, 1.0f); return InteractionResult.SUCCESS; } - else if (heldItem.isEmpty() && !controllerBlockEntity.getInventoryObject().getItem(0).isEmpty()) { + else if (heldItem.isEmpty() && !controllerBlockEntity.inventory.getItem(0).isEmpty()) { withBlockEntityDo(worldIn, pos, be -> { - if (IHeat.HeatLevel.of(be.getInventoryObject().getItem(0).getOrCreateTag().getInt("heat"), be.getMultiblockSize()) == IHeat.HeatLevel.DANGER) { - be.getAdvancement().setPlayer(player.getUUID()); - be.getAdvancement().awardPlayer(CNAdvancement.NO_TIME_TO_DIE); - } - player.setItemInHand(handIn, be.getInventoryObject().getItem(0)); - be.getInventoryObject().setStackInSlot(0, ItemStack.EMPTY); - be.setConfiguredPattern(ItemStack.EMPTY); - //be.clearTimers(); // uncomment if the timer should reset when the reactor stops - be.getOutputManager().rotateOutputs(be.getLevel(), be.getAssembled(), 0); + player.setItemInHand(handIn, be.inventory.getItem(0)); + be.inventory.setStackInSlot(0, ItemStack.EMPTY); + be.configuredPattern = ItemStack.EMPTY; + be.total = 0.0; + be.rotate(be.getBlockState(), new BlockPos(be.getBlockPos().getX(), be.getBlockPos().getY() + (-3), be.getBlockPos().getZ()), be.getLevel(), 0); be.notifyUpdate(); }); - // Blueprint removed: the multiblock stays assembled, it just stops producing. - worldIn.playSound(null, pos, CNSoundEvents.REACTOR_SHUT_OFF.getMainEvent(), SoundSource.BLOCKS, 1.0f, 1.0f); state.setValue(ASSEMBLED, false); return InteractionResult.SUCCESS; } - else if (!heldItem.isEmpty() && !controllerBlockEntity.getInventoryObject().getItem(0).isEmpty()) { + else if (!heldItem.isEmpty() && !controllerBlockEntity.inventory.getItem(0).isEmpty()) { return InteractionResult.PASS; } } @@ -143,42 +109,90 @@ public void onRemove(BlockState state, Level worldIn, BlockPos pos, BlockState n if (!state.hasBlockEntity() || state.getBlock() == newState.getBlock()) return; - withBlockEntityDo(worldIn, pos, be -> ItemHelper.dropContents(worldIn, pos, be.getInventoryObject())); + withBlockEntityDo(worldIn, pos, be -> ItemHelper.dropContents(worldIn, pos, be.inventory)); worldIn.removeBlockEntity(pos); - if (worldIn instanceof ServerLevel serverLevel) { - PersistentFluidLocks.get(serverLevel).clearLock(pos); - } + ReactorControllerBlock controller = (ReactorControllerBlock) state.getBlock(); - if (!state.getValue(ASSEMBLED)) - return; - - int configRadius = CNConfigs.server().notify.warningDistance.get(); - boolean configWarnAll = CNConfigs.server().notify.warnAllPlayers.get(); - NotifyUtil.sendActionBar(worldIn, pos, - CreateNuclearLang.translate("notification.reactor.disassembled"), - ChatFormatting.GOLD, configRadius, configWarnAll - ); + controller.Rotate(state, pos.below(3), worldIn, 0); + List players = worldIn.players(); + for (Player p : players) { + p.sendSystemMessage(Component.translatable("reactor.info.assembled.destroyer")); + } } @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); + public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { + super.onPlace(state, level, pos, oldState, movedByPiston); if (state.getValue(ASSEMBLED)) return; - ReactorAssembler.assemble(pos, level); + List players = level.players(); + ReactorControllerBlock controller = (ReactorControllerBlock) state.getBlock(); + controller.Verify(state, pos, level, players, true); } @Override public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { super.playerDestroy(level, player, pos, state, blockEntity, tool); - if (!(blockEntity instanceof ReactorControllerBlockEntity entity)) return; - if (!entity.isAssembled()) return; - for (Player p : level.players()) { + ReactorControllerBlock controller = (ReactorControllerBlock) state.getBlock(); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, pos); + if (!entity.created) + return; + controller.Rotate(state, pos.below(3), level, 0); + List players = level.players(); + for (Player p : players) { p.sendSystemMessage(Component.translatable("reactor.info.assembled.creator")); } -// entity.removeIOAll(); + } + + // this is the Function that verifies if the pattern is correct (as a test, we added the energy output) + public void Verify(BlockState state, BlockPos pos, Level level, List players, boolean create){ + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(pos).getBlock(); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, pos); + var result = CNMultiblock.REGISTRATE_MULTIBLOCK.findStructure(level, pos); // control the pattern + if (result != null) { // the pattern is correct + + for (Player player : players) { + if (create && !entity.created) { + player.sendSystemMessage(Component.translatable("reactor.info.assembled.creator")); + level.setBlockAndUpdate(pos, state.setValue(ASSEMBLED, true)); + entity.created = true; + entity.destroyed = false; + } + } + return; + } + + // the pattern is incorrect + for (Player player : players) { + if (!create && !entity.destroyed) + { + player.sendSystemMessage(Component.translatable("reactor.info.assembled.destroyer")); + level.setBlockAndUpdate(pos, state.setValue(ASSEMBLED, false)); + entity.created = false; + entity.destroyed = true; + Rotate(state, pos.below(3), level, 0); + } + } + } + public void Rotate(BlockState state, BlockPos pos, Level level, int rotation) { + if (level.getBlockState(pos).is(CNBlocks.REACTOR_OUTPUT.get())) { + ReactorOutput block = (ReactorOutput) level.getBlockState(pos).getBlock(); + ReactorOutputEntity entity = block.getBlockEntityType().getBlockEntity(level, pos); + + if (state.getValue(ASSEMBLED) && rotation != 0) { // Starting the energy + entity.speed = rotation; + entity.setSpeed(Math.abs(entity.speed)); + } else { // stopping the energy + + entity.setSpeed(0); + entity.speed = 0; + } + entity.updateSpeed = true; + entity.updateGeneratedRotation(); + + entity.setSpeed(rotation); + } } @Override @@ -190,4 +204,5 @@ public Class getBlockEntityClass() { public BlockEntityType getBlockEntityType() { return CNBlockEntityTypes.REACTOR_CONTROLLER.get(); } + } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlockEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlockEntity.java index 1727f1671..e595c8f2e 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlockEntity.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerBlockEntity.java @@ -3,535 +3,484 @@ import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation; import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import com.simibubi.create.foundation.utility.CreateLang; import com.simibubi.create.foundation.utility.IInteractionChecker; -import net.minecraft.client.Minecraft; -import net.minecraft.core.*; +import lib.multiblock.SimpleMultiBlockAislePatternBuilder; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.levelgen.structure.BoundingBox; -import net.minecraft.world.level.material.Fluid; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.items.IItemHandler; - -import net.nuclearteam.createnuclear.CNSoundEvents; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.multiblock.IMultiblockController; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorGoggleTooltipRenderer; -import net.nuclearteam.createnuclear.content.multiblock.controller.service.*; -import net.nuclearteam.createnuclear.content.multiblock.controller.snapshot.ReactorInputSnapshot; -import net.nuclearteam.createnuclear.content.multiblock.controller.snapshot.ReactorInputSnapshotBuilder; +import net.nuclearteam.createnuclear.*; import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatBalance; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; -import net.nuclearteam.createnuclear.content.multiblock.controller.consumable.ConsumptionCycleManager; +import net.nuclearteam.createnuclear.content.multiblock.input.ReactorInputEntity; +import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutput; +import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputEntity; -import java.util.ArrayList; import java.util.List; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.PersistentFluidLocks; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.*; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatManager; - +import static net.nuclearteam.createnuclear.content.multiblock.CNMultiblock.*; import static net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock.ASSEMBLED; -@SuppressWarnings({ "unused" }) -public class ReactorControllerBlockEntity extends SmartBlockEntity - implements IInteractionChecker, IHaveGoggleInformation, IMultiblockController { - /** - * The assembled state is stored in the block state - * (`ReactorControllerBlock.ASSEMBLED`). - * Use the helper accessors below to query or toggle it to keep - * entity/blockstate consistent. - */ - private final ReactorPattern pattern = new ReactorPattern(); - private final ReactorControllerInventory inventory; - private int countFuelRod; - private int countCoolerRod; - private HeatBalance heatBalance; - private int heat; - private int lastAppliedOutputHeat; - private boolean isExploding = false; - - /** Client-only looping "running" sound instance; never accessed server-side. */ - @OnlyIn(Dist.CLIENT) - private ReactorRunningSoundInstance runningSound; - - private final ConsumptionCycleManager cycleManager = new ConsumptionCycleManager(); - private double liquidLife; - private ItemStack configuredPattern; - - private List bigFluidStack; - - private int reactorSize = 0; - private Direction reactorFacing = null; - // les pos sont [xMin, xMax, yMin, yMax, zMin, zMax] - private BoundingBox reactorPos; - - - private boolean needsToResolveEntities = false; - private double fluidBuffer = 0.0; - - private CNAdvancementBehaviour advancement; - - private final ReactorInputManagerI inputManager; - private final ReactorOutputManagerI outputManager; - private final ReactorInputFluidManagerI inputFluidManager; - private final ReactorAlarmManagerI alarmManager; - private final ReactorFrameDisplayManagerI frameDisplayManager; - - private ReactorDisplayState displayState = ReactorDisplayState.EMPTY; - - // services (dependencies) - abstracted behind interfaces to follow DIP - private final IHeatService heatService; - private final IPersistenceService persistenceService; - private final IExplosionService meltdownExecutor; - private final IReactorHeatUpdateCoordinator heatCoordinator; - private final IFluidConsumptionRateCalculator fluidRateCalculator; - /** Counts down to the next explosion once in danger; keeps the original 1-tick lag against the heat recalculated later this tick. */ - private final IReactorMeltdownMonitor meltdownMonitor; - /** Drives the alarm blocks based on the danger flag; built in {@link #addBehaviours} since it depends on {@link #advancement}. */ - private IReactorAlarmCoordinator alarmCoordinator; - - // service fields are injected; implementations live in separate classes - - // --- Accessors used by external services (persistence) --- - public ReactorControllerInventory getInventoryObject() { - return this.inventory; - } - - public void deserializeInventory(CompoundTag tag) { - this.inventory.deserializeNBT(tag); - } - - public CompoundTag serializeInventory() { - return this.inventory.serializeNBT(); - } - - public ItemStack getConfiguredPattern() { - return this.configuredPattern; - } - - public void setConfiguredPattern(ItemStack stack) { - this.configuredPattern = stack; - } - - public CompoundTag getConfiguredPatternTag() { - return this.configuredPattern.getTag(); - } - - /** @return the first loaded fluid, or {@code null} if no fluid is present. */ - private BigFluidStack currentFluidStack() { - return bigFluidStack.isEmpty() ? null : bigFluidStack.get(0); - } - - public List getBigFluidStack() { - return this.bigFluidStack; - } - - public void setBigFluidStack(List b) { - this.bigFluidStack = b; - } - - public int getMultiblockSize() { - return this.reactorSize; - } - - public void setMultiblockSize(int s) { - this.reactorSize = s; - } - - @Override - public Direction getMultiblockFacing() { - return this.reactorFacing; - } - - @Override - public void setMultiblockFacing(Direction f) { - this.reactorFacing = f; - } - - public CNAdvancementBehaviour getAdvancement() { - return this.advancement; - } +@SuppressWarnings({"unused"}) +public class ReactorControllerBlockEntity extends SmartBlockEntity implements IInteractionChecker, IHaveGoggleInformation { + public boolean destroyed = false; + public boolean created = false; + public boolean test = true; + public int speed = 16; // This is the result speed of the reactor, change this to change the total capacity + + public boolean sendUpdate; + + public ReactorControllerBlock controller; + + public ReactorControllerInventory inventory; + + //public LinkedHashSet> attachedInventory; + + //private boolean powered; + public State powered = State.OFF; + public float reactorPower; + public float lastReactorPower; + int overFlowHeatTimer = 0; + int overFlowLimiter = 30; + double overHeat = 0; + public int baseUraniumHeat = 25; + public int baseGraphiteHeat = -10; + public int proximityUraniumHeat = 5; + public int proximityGraphiteHeat = -5; + public int maxUraniumPerGraphite = 3; + public int graphiteTimer = 3600; + public int uraniumTimer = 3600; + public int countUraniumRod; + public int countGraphiteRod; + public int heat; + public double total; + public CompoundTag screen_pattern = new CompoundTag(); + public ItemStack configuredPattern; + + private ItemStack fuelItem; + private ItemStack coolerItem; + + private final int[][] formattedPattern = new int[][]{ + {99,99,99,0,1,2,99,99,99}, + {99,99,3,4,5,6,7,99,99}, + {99,8,9,10,11,12,13,14,99}, + {15,16,17,18,19,20,21,22,23}, + {24,25,26,27,28,29,30,31,32}, + {33,34,35,36,37,38,39,40,41}, + {99,42,43,44,45,46,47,48,99}, + {99,99,49,50,51,52,53,99,99}, + {99,99,99,54,55,56,99,99,99} + }; + private final int[][] offsets = { {1, 0}, {-1, 0}, {0, 1}, {0, -1} }; - /** Main constructor allowing dependency injection for testability and DIP compliance. */ - public BoundingBox getMultiblockPos() { - return this.reactorPos; - } - public void setMultiblockStructure(BoundingBox p) { - this.reactorPos = p; - } - public void clearTimers() { - this.cycleManager.clear(); - } - - public ReactorFrameDisplayManagerI getFrameDisplayManager() { - return this.frameDisplayManager; - } - - public ReactorInputFluidManagerI getInputFluidManager() { - return this.inputFluidManager; - } - - public ReactorOutputManagerI getOutputManager() { - return this.outputManager; - } - - public void setDisplayState(ReactorDisplayState state) { - this.displayState = state; - } - - public ReactorDisplayState getDisplayState() { - return this.displayState; - } - - private List allManagers() { - return List.of(inputManager, inputFluidManager, outputManager, alarmManager); - } - - /** - * Main constructor allowing dependency injection for testability and DIP - * compliance. - */ public ReactorControllerBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); - this.inventory = new ReactorControllerInventory(this); - this.configuredPattern = ItemStack.EMPTY; - this.heatBalance = new HeatBalance(0, 0); - - this.inputManager = new ReactorInputManager(); - this.outputManager = new ReactorOutputManager(); - this.inputFluidManager = new ReactorInputFluidManager(); - this.alarmManager = new ReactorAlarmManager(); - this.frameDisplayManager = new ReactorFrameDisplayManager(); - - this.bigFluidStack = new ArrayList<>(); - - this.heatService = new DefaultHeatService(new HeatManager()); - this.persistenceService = new DefaultPersistenceService(); - this.meltdownExecutor = new ReactorMeltdownExecutor(); - this.heatCoordinator = new ReactorHeatUpdateCoordinator(this.heatService); - this.fluidRateCalculator = new FluidConsumptionRateCalculator(this.heatService); - this.meltdownMonitor = new ReactorMeltdownMonitor(); + inventory = new ReactorControllerInventory(this); + configuredPattern = ItemStack.EMPTY; + //attachedInventory = new LinkedHashSet<>(); } @Override public void addBehaviours(List behaviours) { - behaviours.add(advancement = new CNAdvancementBehaviour(this, CNAdvancement.T1_REACTOR, CNAdvancement.T2_REACTOR, CNAdvancement.T3_REACTOR, CNAdvancement.NO_TIME_TO_DIE, CNAdvancement.SILENCE_THE_CORE)); - this.alarmCoordinator = new ReactorAlarmCoordinator(advancement); + } - public boolean getAssembled() { // returns whether the reactor structure is currently assembled + public boolean getAssembled() { // permet de savoir si le réacteur est formé ou pas. BlockState state = getBlockState(); return state.getValue(ASSEMBLED); } @Override public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - CompoundTag patternTag = this.getConfiguredPatternTag(); + if(!configuredPattern.getOrCreateTag().isEmpty()) { + CreateLang.translate("gui.gauge.info_header") + .style(ChatFormatting.GRAY) + .forGoggles(tooltip); + IHeat.HeatLevel.getName("reactor_controller").style(ChatFormatting.GRAY).forGoggles(tooltip); + + IHeat.HeatLevel.getFormattedHeatText(configuredPattern.getOrCreateTag().getInt("heat")).forGoggles(tooltip); + + if (fuelItem.isEmpty()) { + // if rod empty we initialize it at 1 (and display it as 0) to avoid having air item displayed instead of the rod + IHeat.HeatLevel.getFormattedItemText(new ItemStack(CNItems.URANIUM_ROD.asItem(), 1), true).forGoggles(tooltip); + } else { + IHeat.HeatLevel.getFormattedItemText(fuelItem, false).forGoggles(tooltip); + } - if (patternTag == null || patternTag.isEmpty()) { - return false; + if (fuelItem.isEmpty()) { + // if rod empty we initialize it at 1 (and display it as 0) to avoid having air item displayed instead of the rod + IHeat.HeatLevel.getFormattedItemText(new ItemStack(CNItems.GRAPHITE_ROD.asItem(), 1), true).forGoggles(tooltip); + } else { + IHeat.HeatLevel.getFormattedItemText(coolerItem, false).forGoggles(tooltip); + } } - ReactorGoggleTooltipRenderer.render(tooltip, displayState, patternTag.getInt("heat"), isPlayerSneaking, reactorSize); - return true; } - // (If read/write are not implemented, the items stored in this block entity's - // inventory will be lost when the world is reloaded!) - @Override - protected void read(CompoundTag compound, boolean clientPacket) { - super.read(compound, clientPacket); // Always call first to restore the base coordinates - // delegate managers and persistence - this.inputManager.read(compound); - this.outputManager.read(compound); - this.inputFluidManager.read(compound); - this.alarmManager.read(compound); - this.frameDisplayManager.read(compound); - - this.persistenceService.readBasicState(this, compound, clientPacket); - this.needsToResolveEntities = true; - - this.cycleManager.clear(); - if (compound.contains("cycleManager")) { - this.cycleManager.deserializeNBT(compound.getCompound("cycleManager")); - } - } + //(Si les methode read et write ne sont pas implémenté alors lorsque l'on relance le monde minecraft les items dans le composant auront disparu !) @Override - protected void write(CompoundTag compound, boolean clientPacket) { - super.write(compound, clientPacket); - this.inputManager.write(compound); - this.outputManager.write(compound); - this.inputFluidManager.write(compound); - this.alarmManager.write(compound); - this.frameDisplayManager.write(compound); - - this.persistenceService.writeBasicState(this, compound, clientPacket); + protected void read(CompoundTag compound, boolean clientPacket) { //Permet de stocker les item 1/2 + if (!clientPacket) { + inventory.deserializeNBT(compound.getCompound("pattern")); + } + configuredPattern = ItemStack.of(compound.getCompound("items")); + if (ItemStack.of(compound.getCompound("cooler")) != null || ItemStack.of(compound.getCompound("fuel")) != null) { + coolerItem = ItemStack.of(compound.getCompound("cooler")); + fuelItem = ItemStack.of(compound.getCompound("fuel")); - compound.put("cycleManager", cycleManager.serializeNBT()); + } + /* + countGraphiteRod = compound.getInt("countGraphiteRod"); + countUraniumRod = compound.getInt("countUraniumRod"); + graphiteTimer = compound.getInt("graphiteTimer"); + uraniumTimer = compound.getInt("uraniumTimer"); + heat = compound.getInt("heat"); +*/ + total = compound.getDouble("total"); + super.read(compound, clientPacket); } - public boolean isAssembled() { - if (level == null) - return false; - try { - return level.getBlockState(worldPosition).getValue(ASSEMBLED); - } catch (Exception e) { - return false; + @Override + protected void write(CompoundTag compound, boolean clientPacket) { //Permet de stocker les item 2/2 + if (!clientPacket) { + compound.put("pattern", inventory.serializeNBT()); + //compound.putBoolean("powered", isPowered()); } - } + compound.put("items", configuredPattern.serializeNBT()); - public void setAssembled(boolean assembled) { - if (level == null) - return; - level.setBlockAndUpdate(worldPosition, getBlockState().setValue(ASSEMBLED, assembled)); - this.setChanged(); + if (coolerItem != null || fuelItem != null) { + compound.put("cooler", coolerItem.serializeNBT()); + compound.put("fuel", fuelItem.serializeNBT()); + } + /*compound.putInt("countGraphiteRod", countGraphiteRod); + compound.putInt("countUraniumRod", countUraniumRod); + compound.putInt("graphiteTimer", graphiteTimer); + compound.putInt("uraniumTimer", uraniumTimer); + compound.putInt("heat", heat); + compound.putString("state", powered.name()); + compound.put("screen_pattern", screen_pattern); +*/ + compound.putDouble("total", calculateProgress()); + super.write(compound, clientPacket); } - public void logReactorConnections(Player player) { - ReactorDebugDiagnostics.sendReactorConnectionsTo(player, level, inputManager, inputFluidManager, outputManager, alarmManager); + public enum State { + ON, OFF } - private void updateReactorStateVisibility() { - if (level == null || level.isClientSide) return; - - BlockState state = getBlockState(); - if (!(state.getBlock() instanceof ReactorControllerBlock)) return; - - boolean currentActive = state.getValue(ReactorControllerBlock.ACTIVE); - - // The reactor is "ACTIVE" (ON) only if it is assembled AND has the resources required to run - boolean targetActive = isAssembled() && heatCoordinator.canRun(getConfiguredPattern(), getDisplayState(), getInputFluidManager(), level, getAssembled()); - - if (currentActive != targetActive) { - level.setBlock(worldPosition, state.setValue(ReactorControllerBlock.ACTIVE, targetActive), 3); + private void explodeReactorCore(Level level, BlockPos pos) { + for (int x = -1; x <= 1; x++) { + for (int y = -1; y <= 1; y++) { + for (int z = -1; z <= 1; z++) { + BlockPos currentPos = pos.offset(x, y, z); + //le problème viens de la il ne rentre pas dans le if + if (level.getBlockState(currentPos).is(CNBlocks.REACTOR_CORE.get())) { + // Create and execute the explosion + Explosion explosion = new Explosion(level, null, currentPos.getX(), currentPos.getY(), currentPos.getZ(), 4.0F, false, Explosion.BlockInteraction.DESTROY); + explosion.explode(); + explosion.finalizeExplosion(true); + } + } + } } } @Override public void tick() { super.tick(); - if (level.isClientSide) { - tickRunningSound(); - return; - } - if (isExploding) + if (level.isClientSide) return; - // Heat value written by the previous tick's handleAssembledState(); this tick's recalculated - // heat is not visible here yet, so the alarm/meltdown danger flag is intentionally 1 tick behind. - int currentHeat = (int) configuredPattern.getOrCreateTag().getDouble("heat"); - boolean isDanger = alarmCoordinator.computeDanger(currentHeat, this.getMultiblockSize()); - - alarmCoordinator.update(level, alarmManager, isDanger); - - IReactorMeltdownMonitor.MeltdownState meltdownState = meltdownMonitor.tick(level, getBlockPos(), isDanger); - - if (meltdownState == IReactorMeltdownMonitor.MeltdownState.EXPLODE) { - if (level instanceof ServerLevel serverLevel) { - this.meltdownExecutor.triggerExplosion(serverLevel, getBlockPos(), reactorSize, countFuelRod); + if (isEmptyConfiguredPattern()) { + + BlockEntity blockEntity = level.getBlockEntity(getBlockPosForReactor('I')); + + + + if (blockEntity instanceof ReactorInputEntity be) { + CompoundTag tag = be.serializeNBT(); + ListTag inventoryTag = tag.getCompound("Inventory").getList("Items", Tag.TAG_COMPOUND); + fuelItem = ItemStack.of(inventoryTag.getCompound(0)); + coolerItem = ItemStack.of(inventoryTag.getCompound(1)); + if (fuelItem.getCount() > 0 && coolerItem.getCount() > 0) { + configuredPattern.getOrCreateTag().putDouble("heat", calculateHeat(tag)); + if (updateTimers()) { + be.inventory.extractItem(0, 1, false); + be.inventory.extractItem(1, 1, false); + total = calculateProgress(); + int heat = (int) configuredPattern.getOrCreateTag().getDouble("heat"); + + if (IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.SAFETY || IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.CAUTION || IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.WARNING) { + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), heat/4); + } else { + // Send a packet to all clients around this block within 16 blocks + EventTriggerPacket packet = new EventTriggerPacket(600); // display for 100 ticks + CreateNuclear.LOGGER.warn("hum EventTriggerBlock ? {}", packet); + CNPackets.sendToNear(level, getBlockPos(), 32, packet); + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), 0); + } + return; + } + } else { + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), 0); + } + + /*if (fuelItem.getCount() > 0 && coolerItem.getCount() > 0) { + configuredPattern.getOrCreateTag().putDouble("heat", calculateHeat(tag)); + if (updateTimers()) { + TransferUtil.extract(be.inventory, ItemVariant.of(fuelItem), 1); + TransferUtil.extract(be.inventory, ItemVariant.of(coolerItem), 1); + total = calculateProgress(); + int heat = (int) configuredPattern.getOrCreateTag().getDouble("heat"); + + if (IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.SAFETY || IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.CAUTION || IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.WARNING) { + //j'ai divisé la chaleur par 4, car maintenant on a mis la chaleur sur 1000 et non plus sur 200 en ayant rajouté 1/5 de bonus + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), heat/4); + } else { + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), 0); + } + return; + } + } else { + this.rotate(getBlockState(), new BlockPos(getBlockPos().getX(), getBlockPos().getY() + FindController('O').getY(), getBlockPos().getZ()), getLevel(), 0); + } + */ + + this.notifyUpdate(); } - isExploding = true; - return; } + } - if (!isEmptyConfiguredPattern()) { - int heat = (int) this.getConfiguredPatternTag().getDouble("heat"); - countCoolerRod = this.getConfiguredPatternTag().getInt("countCoolerRod"); - countFuelRod = this.getConfiguredPatternTag().getInt("countFuelRod"); - heatBalance = heatCoordinator.calculateHeatBalance(configuredPattern, displayState, level); - } - resolveEntitiesIfNeeded(); + private boolean isEmptyConfiguredPattern() { + return !configuredPattern.isEmpty() || !configuredPattern.getOrCreateTag().isEmpty(); + } - ReactorInputSnapshot snapshot = ReactorInputSnapshotBuilder.build(level, inputManager, inputFluidManager); - this.displayState = new ReactorDisplayState(snapshot.items(), snapshot.fluids(), snapshot.maxFluidCapacity()); - this.bigFluidStack = snapshot.fluids(); + private boolean updateTimers() { - updateReactorStateVisibility(); - handleAssembledState(); + total -= 1; + return total <= 0;//(total/constTotal) <= 0; } - /** - * Client-side: keep the looping "running" sound alive while the reactor is producing energy. - * Driven by the {@code ACTIVE} blockstate property, which the server recomputes every tick in - * {@link #updateReactorStateVisibility()} and vanilla syncs to the client automatically. - */ - @OnlyIn(Dist.CLIENT) - private void tickRunningSound() { - BlockState state = getBlockState(); - boolean active = state.hasProperty(ReactorControllerBlock.ACTIVE) - && state.getValue(ReactorControllerBlock.ACTIVE); + private double calculateProgress() { + countGraphiteRod = configuredPattern.getOrCreateTag().getInt("countGraphiteRod"); + countUraniumRod = configuredPattern.getOrCreateTag().getInt("countUraniumRod"); + // graphiteTimer = configuredPattern.getOrCreateTag().getInt("graphiteTime"); + // uraniumTimer = configuredPattern.getOrCreateTag().getInt("uraniumTime"); - if (!active) { - if (runningSound != null) { - runningSound.stopSound(); - runningSound = null; - } - return; - } + double totalGraphiteRodLife = (double) graphiteTimer / countGraphiteRod; + double totalUraniumRodLife = (double) uraniumTimer / countUraniumRod; - if (runningSound == null || runningSound.isStopped()) { - runningSound = new ReactorRunningSoundInstance(level, worldPosition, CNSoundEvents.REACTOR_RUNNING.getMainEvent()); - Minecraft.getInstance().getSoundManager().play(runningSound); - } + return totalGraphiteRodLife + totalUraniumRodLife; } - // --- extracted sub-steps to keep single responsibility per method --- - private void resolveEntitiesIfNeeded() { - if (!needsToResolveEntities) - return; - List handlers = inputManager.getItemHandlers(level); - CreateNuclear.LOGGER.warn("Resolving inputs after load, handlers found: {}", handlers.size()); - needsToResolveEntities = false; - this.setChanged(); - } + private double calculateHeat(CompoundTag tag) { + countGraphiteRod = configuredPattern.getOrCreateTag().getInt("countGraphiteRod"); + countUraniumRod = configuredPattern.getOrCreateTag().getInt("countUraniumRod"); + heat = 0; - /** - * Tick logic applied while the reactor is assembled: if it doesn't have - * enough fuel ({@link IReactorHeatUpdateCoordinator#canRun}), only the - * displayed heat is updated (and outputs stopped); otherwise the actual - * heat is calculated, fluid consumed, the item consumption cycle advanced, - * and outputs rotated according to the heat. - */ - private void handleAssembledState() { - if (!heatCoordinator.canRun(configuredPattern, displayState, inputFluidManager, level, isAssembled())) { - heatCoordinator.updateHeatOnly(configuredPattern, displayState, currentFluidStack(), heatBalance, heat, inventory, level, isAssembled()); - if (!outputManager.getBlocksPosition(getLevel()).isEmpty()) { - outputManager.rotateOutputs(getLevel(), getAssembled(), 0); + // if more than maxUraniumPerGraphite of the rods are uranium, the reactor will overheat + if (countUraniumRod > countGraphiteRod * maxUraniumPerGraphite) { + overFlowHeatTimer++; + if (overFlowHeatTimer >= overFlowLimiter) { + overHeat+=1; + overFlowHeatTimer= 0; + if (overFlowLimiter > 2) { + overFlowLimiter -= 1; + } + } + } else { + overFlowHeatTimer = 0; + overFlowLimiter = 30; + if (overHeat > 0) { + overHeat -= 2; + } else { + overHeat = 0; } - - setChanged(); - notifyUpdate(); - return; } - - setChanged(); - notifyUpdate(); - - BigFluidStack fluidStack = currentFluidStack(); - heat = heatCoordinator.calculateAndWriteHeat(configuredPattern, fluidStack, heatBalance, heat, inventory, level, displayState); - fluidBuffer = fluidRateCalculator.tick(fluidStack, reactorSize, level, inputFluidManager, fluidBuffer); - cycleManager.update(configuredPattern, level, inputManager, level.getGameTime() % 20 == 0); - - if (IHeat.HeatLevel.isNotDanger(heat, getMultiblockSize()) && !outputManager.getBlocksPosition(level).isEmpty()) { - if (Math.abs(heat - lastAppliedOutputHeat) >= ReactorOutputManager.RPM_DIVIDER / 2) { - lastAppliedOutputHeat = heat; + // the offsets for the four directions (down, up, right, left) is int[][] offsets = { {1, 0}, {-1, 0}, {0, 1}, {0, -1} }; (defined at the top of the class) + String currentRod = ""; + ListTag list = inventory.getStackInSlot(0).getOrCreateTag().getCompound("pattern").getList("Items", Tag.TAG_COMPOUND); + for (int i = 0; i < list.size(); i++) { + if (ItemStack.of(list.getCompound(i)).is(CNTags.CNItemTags.FUEL.tag)) { + heat += baseUraniumHeat; + currentRod = "u"; + } else if (ItemStack.of(list.getCompound(i)).is(CNTags.CNItemTags.COOLER.tag)) { + heat += baseGraphiteHeat; + currentRod = "g"; + } + for (int j = 0; j < formattedPattern.length; j++) { + for (int k = 0; k < formattedPattern[j].length; k++) { + // Skip if the current pattern value is 99 + if (formattedPattern[j][k] == 99) continue; + + // Check if the current slot matches the pattern + if (list.getCompound(i).getInt("Slot") != formattedPattern[j][k]) continue; + + // For each neighbor (up, down, right, left) + for (int[] offset : offsets) { + int nj = j + offset[0]; + int nk = k + offset[1]; + + // Check if the indices are within the array boundaries + if (nj < 0 || nj >= formattedPattern.length || nk < 0 || nk >= formattedPattern[j].length) + continue; + + int neighborSlot = formattedPattern[nj][nk]; + + // Loop through the list to find the neighbor slot + for (int l = 0; l < list.size(); l++) { + if (list.getCompound(l).getInt("Slot") == neighborSlot) { + // If the currentRod equals "u", apply the corresponding heat + if (currentRod.equals("u")) { + ItemStack stack = ItemStack.of(list.getCompound(i)); + if (stack.is(CNTags.CNItemTags.FUEL.tag)) { + heat += proximityUraniumHeat; + } else if (stack.is(CNTags.CNItemTags.COOLER.tag)) { + heat += proximityGraphiteHeat; + } + } + } + } + } + } } - outputManager.rotateOutputs(getLevel(), getAssembled(), lastAppliedOutputHeat); } + return heat + overHeat; } - private boolean isEmptyConfiguredPattern() { - return configuredPattern.isEmpty() || this.getConfiguredPatternTag().isEmpty(); - } + private BlockPos getBlockPosForReactor(char character) { + BlockPos pos = FindController(character); + BlockPos posController = getBlockPos(); + BlockPos posInput = new BlockPos(posController.getX(), posController.getY(), posController.getZ()); - public void addInput(BlockPos inputPos) { - this.inputManager.addBlock(inputPos); - this.setChanged(); - } - - public void removeInput(BlockPos inputPos) { - this.inputManager.removeBlock(inputPos); - this.setChanged(); - } - - public void addOutput(BlockPos outputPos) { - this.outputManager.addBlock(outputPos); - this.setChanged(); - } - - public void removeOutput(BlockPos outputPos) { - this.outputManager.removeBlock(outputPos); - this.setChanged(); - } - - public void addInputFluid(BlockPos outputPos) { - this.inputFluidManager.addBlock(outputPos); - this.setChanged(); - } - - public void removeInputFluid(BlockPos outputPos) { - this.inputFluidManager.removeBlock(outputPos); - this.setChanged(); - // Breaking a fluid input discards its tank contents along with the block entity. - // Re-evaluate the fluid lock so a different fluid can be accepted once no remaining - // input still holds liquid — otherwise the controller stays locked to the old fluid. - clearLockIfAllInputsEmpty(); - } + int[][] directions = { + {0,0, pos.getX()}, // NORTH + {0,0, -pos.getX()}, // SOUTH + {-pos.getX(),0,0}, // EAST + {pos.getX(),0,0} // WEST + }; - public void addAlarm(BlockPos alarmPos) { - this.alarmManager.addBlock(alarmPos); - this.setChanged(); - } - public void removeAlarm(BlockPos alarmPos) { - this.alarmManager.removeBlock(alarmPos); - this.setChanged(); - } + for (int[] direction : directions) { + BlockPos newPos = posController.offset(direction[0], direction[1], direction[2]); + if (level.getBlockState(newPos).is(CNBlocks.REACTOR_INPUT.get())) { + posInput = newPos; + break; + } + } - public void removeIOAll() { - allManagers().forEach(m -> m.clearInvalid(level)); - this.setChanged(); - } + return posInput; + } + + private CompoundTag convertePattern(CompoundTag compoundTag) { + ListTag pattern = compoundTag.getList("Items", Tag.TAG_COMPOUND); + + int[][] list = new int[][]{ + {99,99,99,0,1,2,99,99,99}, + {99,99,3,4,5,6,7,99,99}, + {99,8,9,10,11,12,13,14,99}, + {15,16,17,18,19,20,21,22,23}, + {24,25,26,27,28,29,30,31,32}, + {33,34,35,36,37,38,39,40,41}, + {99,42,43,44,45,46,47,48,99}, + {99,99,49,50,51,52,53,99,99}, + {99,99,99,54,55,56,99,99,99} + }; + + + return null; + } + + private static BlockPos FindController(char character) { + return SimpleMultiBlockAislePatternBuilder.start() + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAIAA, ADADA, BACAB, ADADA, AAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAOAA) + .where('A', a -> a.getState().is(CNBlocks.REACTOR_CASING.get())) + .where('B', a -> a.getState().is(CNBlocks.REACTOR_FRAME.get())) + .where('C', a -> a.getState().is(CNBlocks.REACTOR_CORE.get())) + .where('D', a -> a.getState().is(CNBlocks.REACTOR_COOLER.get())) + .where('*', a -> a.getState().is(CNBlocks.REACTOR_CONTROLLER.get())) + .where('O', a -> a.getState().is(CNBlocks.REACTOR_OUTPUT.get())) + .where('I', a -> a.getState().is(CNBlocks.REACTOR_INPUT.get())) + .getDistanceController(character); + } + + public void rotate(BlockState state, BlockPos pos, Level level, int rotation) { + if (level.getBlockState(pos).is(CNBlocks.REACTOR_OUTPUT.get()) && rotation > 0) { + if (level.getBlockState(pos).getBlock() instanceof ReactorOutput block) { + ReactorOutputEntity entity = block.getBlockEntityType().getBlockEntity(level, pos); + if (state.getValue(ASSEMBLED)) { // Starting the energy + entity.speed = rotation; + entity.heat = rotation; + } else { // stopping the energy + entity.speed = 0; + entity.heat = 0; + } + entity.updateSpeed = true; + entity.updateGeneratedRotation(); + entity.setSpeed(rotation); - /** Try to lock this controller to the given Fluid. Returns true if allowed. */ - public boolean tryLockFluid(Fluid fluid) { - // Fluid locks are server-authoritative and persisted per-level via PersistentFluidLocks. - // On the client there is no lock to enforce, so stay permissive. - if (level instanceof ServerLevel serverLevel) { - return PersistentFluidLocks.get(serverLevel).tryLock(getBlockPos(), fluid); + } } - return true; - } - - /** Returns whether the given FluidStack is acceptable for this controller. */ - public boolean canAcceptFluid(FluidStack stack) { - if (stack == null || stack.isEmpty()) - return true; - if (level instanceof ServerLevel serverLevel) { - return PersistentFluidLocks.get(serverLevel).canAccept(getBlockPos(), stack.getFluid()); + else { + if (level.getBlockState(pos).getBlock() instanceof ReactorOutput block) { + ReactorOutputEntity entity = block.getBlockEntityType().getBlockEntity(level, pos); + entity.setSpeed(0); + entity.heat = 0; + entity.updateSpeed = true; + entity.updateGeneratedRotation(); + } } - return true; } - /** Force-clear the lock on this controller. */ - public void clearLock() { - if (level instanceof ServerLevel serverLevel) { - PersistentFluidLocks.get(serverLevel).clearLock(getBlockPos()); - setChanged(); - sendData(); + public InteractionResult onClick(Player player, InteractionHand hand) { + ItemStack heldItem = player.getItemInHand(hand); + if (heldItem.is(CNItems.REACTOR_BLUEPRINT.get()) && !heldItem.isEmpty()) { + if (configuredPattern.isEmpty()) { + inventory.setStackInSlot(0, heldItem); + configuredPattern = heldItem; + //player.setItemInHand(hand, ItemStack.EMPTY); + } + notifyUpdate(); + return InteractionResult.SUCCESS; } - } - - public void clearLockIfAllInputsEmpty() { - if (level == null || level.isClientSide) - return; - - boolean anyNonEmpty = getInputFluidManager().getFuildHandlers(level).stream() - .anyMatch(handler -> { - for (int t = 0; t < handler.getTanks(); t++) - if (!handler.getFluidInTank(t).isEmpty()) - return true; - return false; - }); - - if (!anyNonEmpty) - clearLock(); + else if (heldItem.isEmpty()) { + if (configuredPattern.isEmpty()) { + if (!level.isClientSide) { + if (player.addItem(configuredPattern)){ + configuredPattern = ItemStack.EMPTY; + } + else { + player.setItemInHand(hand, configuredPattern); + inventory.setStackInSlot(0, ItemStack.EMPTY); + } + notifyUpdate(); + return InteractionResult.CONSUME; + //return InteractionResult.FAIL; + } + else return InteractionResult.SUCCESS; + } + } + return InteractionResult.PASS; } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerGenerator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerGenerator.java index 8a2fafdee..6fc5b3006 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerGenerator.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerGenerator.java @@ -8,7 +8,6 @@ import net.minecraftforge.client.model.generators.ModelFile; public class ReactorControllerGenerator extends SpecialBlockStateGen { - @Override protected int getXRotation(BlockState state) { return 0; @@ -16,52 +15,11 @@ protected int getXRotation(BlockState state) { @Override protected int getYRotation(BlockState state) { - if (state == null || !state.hasProperty(ReactorControllerBlock.FACING)) { - return 0; - } return horizontalAngle(state.getValue(ReactorControllerBlock.FACING)); } @Override public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, BlockState state) { - final String controllerPath = "block/reactor/controller/controller_panel_"; - - // Safety fallback if the state is invalid at the start of Minecraft's block scan - if (!state.hasProperty(ReactorControllerBlock.ASSEMBLED) || !state.hasProperty(ReactorControllerBlock.ACTIVE)) { - return prov.models() - .withExistingParent("block/reactor/controller/" + ControllerVisualState.OFF.getSuffix(), prov.modLoc("block/reactor/controller/block")) - .texture("1", prov.modLoc(controllerPath + ControllerVisualState.OFF.getSuffix())) - .texture("particle", prov.modLoc(controllerPath + ControllerVisualState.OFF.getSuffix())); - } - - boolean isAssembled = state.getValue(ReactorControllerBlock.ASSEMBLED); - boolean isActive = state.getValue(ReactorControllerBlock.ACTIVE); - - ControllerVisualState controllerState = ControllerVisualState.OFF; - if (isAssembled) { - controllerState = isActive ? ControllerVisualState.ON : ControllerVisualState.STANDBY; - } - - return prov.models() - .withExistingParent("block/reactor/controller/" + controllerState.getSuffix(), prov.modLoc("block/reactor/controller/block")) - .texture("1", prov.modLoc(controllerPath + controllerState.getSuffix())) - .texture("particle", prov.modLoc(controllerPath + controllerState.getSuffix())); - } - - enum ControllerVisualState { - OFF("off"), - ON("on"), - STANDBY("standby") - ; - - private final String suffix; - - ControllerVisualState(String suffix) { - this.suffix = suffix; - } - - public String getSuffix() { - return this.suffix; - } + return prov.models().getExistingFile(prov.modLoc("block/reactor/controller/block")); } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerInventory.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerInventory.java index f269ab198..1bd1bd5a9 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerInventory.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorControllerInventory.java @@ -14,6 +14,7 @@ public ReactorControllerInventory(ReactorControllerBlockEntity be) { this.be = be; } + @Override public ItemStack removeItemNoUpdate(int index) { be.setChanged(); @@ -22,6 +23,9 @@ public ItemStack removeItemNoUpdate(int index) { @Override public boolean isItemValid(int slot, ItemStack resource) { - return slot == 0 && resource.is(CNItems.REACTOR_BLUEPRINT.get()); + return switch (slot) { + case 0 -> CNItems.REACTOR_BLUEPRINT.get() == resource.getItem(); + default -> !super.isItemValid(slot, resource); + }; } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorDebugDiagnostics.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorDebugDiagnostics.java deleted file mode 100644 index e1e7b744d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorDebugDiagnostics.java +++ /dev/null @@ -1,57 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller; - -import net.minecraft.ChatFormatting; -import net.minecraft.core.BlockPos; -import net.minecraft.network.chat.Component; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.*; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -import java.util.Collection; - -public class ReactorDebugDiagnostics { - private static final String TITLE = "reactor.debug.title"; - private static final String SUMMARY = "reactor.debug.summary"; - private static final String REGISTERED_POSITION = "reactor.debug.registered_position"; - private static final String VALID_POSITION = "reactor.debug.valid_position"; - - private static final String INPUT = "reactor.debug.label.input"; - private static final String INPUT_FLUID = "reactor.debug.label.fluid_input"; - private static final String OUTPUT = "reactor.debug.label.output"; - private static final String ALARM = "reactor.debug.label.alarm"; - - private ReactorDebugDiagnostics() {} - - public static void sendReactorConnectionsTo(Player player, Level level, - ReactorInputManagerI inputManager, ReactorInputFluidManagerI inputFluidManager, - ReactorOutputManagerI outputManager, - ReactorAlarmManagerI alarmManager - ) { - player.sendSystemMessage(CreateNuclearLang.translate(TITLE).style(ChatFormatting.GOLD).component()); - - sendManagerSummary(player, CreateNuclearLang.translate(INPUT).component(), - inputManager.size(), inputManager.getBlocksPosition(), inputManager.getBlocksPosition(level)); - - sendManagerSummary(player, CreateNuclearLang.translate(INPUT_FLUID).component(), - inputFluidManager.size(), inputFluidManager.getBlocksPosition(), inputFluidManager.getBlocksPosition(level)); - - sendManagerSummary(player, CreateNuclearLang.translate(OUTPUT).component(), - outputManager.size(), outputManager.getBlocksPosition(), outputManager.getBlocksPosition(level)); - - sendManagerSummary(player, CreateNuclearLang.translate(ALARM).component(), - alarmManager.size(), alarmManager.getBlocksPosition(), alarmManager.getBlocksPosition(level)); - } - - private static void sendManagerSummary(Player player, Component label, int registeredCount, - Collection registered, Collection valid) { - player.sendSystemMessage(CreateNuclearLang.translate(SUMMARY, label, registeredCount, valid.size()).style(ChatFormatting.YELLOW).component()); - - for (BlockPos pos : registered) { - player.sendSystemMessage(CreateNuclearLang.translate(REGISTERED_POSITION, pos.toShortString()).component()); - } - for (BlockPos pos : valid) { - player.sendSystemMessage(CreateNuclearLang.translate(VALID_POSITION, pos.toShortString()).component()); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorRunningSoundInstance.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorRunningSoundInstance.java deleted file mode 100644 index 52f39cb0c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/ReactorRunningSoundInstance.java +++ /dev/null @@ -1,61 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller; - -import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; -import net.minecraft.core.BlockPos; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundSource; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.CreateNuclear; - -/** - * Client-side looping sound played while a reactor is actively producing energy. - *

- * Mirrors {@code ReactorAlarmSoundInstance}: the instance stops itself once the block at - * {@code pos} is no longer a running reactor controller (the {@code ACTIVE} blockstate property - * is synced from the server), so it survives the controller block being broken or the reactor - * shutting down even if the owning block entity's tick stops driving it. - */ -public class ReactorRunningSoundInstance extends AbstractTickableSoundInstance { - private final BlockPos pos; - private final Level level; - - public ReactorRunningSoundInstance(Level level, BlockPos pos, SoundEvent sound) { - super(sound, SoundSource.BLOCKS, level != null ? level.random : null); - this.level = level; - this.pos = pos; - if (pos != null) { - this.x = pos.getX(); - this.y = pos.getY(); - this.z = pos.getZ(); - } - this.looping = true; - this.delay = 0; - this.volume = 1.0F; - } - - @Override - public void tick() { - try { - if (level == null || pos == null) { - stop(); - return; - } - - BlockState state = level.getBlockState(pos); - if (!(state.getBlock() instanceof ReactorControllerBlock) - || !state.hasProperty(ReactorControllerBlock.ACTIVE) - || !state.getValue(ReactorControllerBlock.ACTIVE)) { - stop(); - } - } catch (Exception e) { - stop(); - CreateNuclear.LOGGER.warn(e.getMessage()); - } - } - - /** Public entry point so the owning block entity can stop the loop ({@link #stop()} is protected). */ - public void stopSound() { - stop(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumableTimer.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumableTimer.java deleted file mode 100644 index f668341ab..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumableTimer.java +++ /dev/null @@ -1,62 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; - -public class ConsumableTimer { - private final IConsumable consumable; - private int remainingTicks; - private int maxTicks; - private int countInPattern; - - public ConsumableTimer(IConsumable consumable, int maxTicks, int count) { - this.consumable = consumable; - this.maxTicks = maxTicks; - this.remainingTicks = maxTicks; - this.countInPattern = count; - } - - public boolean tick() { - if (remainingTicks > 0) - remainingTicks--; - return remainingTicks <= 0; - } - - public void reset(int newMaxTicks, int newCount) { - this.maxTicks = newMaxTicks; - this.remainingTicks = newMaxTicks; - this.countInPattern = newCount; - } - - public IConsumable getConsumable() { - return consumable; - } - - public String getId() { - return consumable.getId(); - } - - public int getCountInPattern() { - return countInPattern; - } - - public int getMaxTicks() { - return maxTicks; - } - - public CompoundTag serializeNBT() { - CompoundTag tag = new CompoundTag(); - tag.put("consumable", consumable.serializeNBT()); - tag.putInt("remainingTicks", remainingTicks); - tag.putInt("maxTicks", maxTicks); - tag.putInt("countInPattern", countInPattern); - return tag; - } - - public static ConsumableTimer deserializeNBT(CompoundTag tag) { - IConsumable consumable = IConsumable.deserializeNBT(tag.getCompound("consumable")); - ConsumableTimer t = new ConsumableTimer( - consumable, tag.getInt("maxTicks"), tag.getInt("countInPattern")); - t.remainingTicks = tag.getInt("remainingTicks"); - return t; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumptionCycleManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumptionCycleManager.java deleted file mode 100644 index 7a93ea7ef..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ConsumptionCycleManager.java +++ /dev/null @@ -1,161 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputManagerI; - -import java.util.*; - -public class ConsumptionCycleManager { - - private final List timers = new ArrayList<>(); - private Map patternSnapshot = new HashMap<>(); - - public void startCycle(ItemStack pattern, Level level) { - timers.clear(); - buildTimers(pattern, level); - takeSnapshot(pattern, level); - } - - public void resetCycle(ItemStack pattern, Level level, ReactorInputManagerI manager) { - Map counts = PatternReader.readItemCounts(pattern); - List updated = new ArrayList<>(); - - for (Map.Entry entry : counts.entrySet()) { - RodType rodType = RodType.resolveRodType(entry.getKey(), level); - if (!rodType.isNotEmptyItem()) - continue; - - String id = ForgeRegistries.ITEMS.getKey(entry.getKey()).getPath(); - int count = entry.getValue(); - int ticks = new ItemConsumable(id, rodType).computeTimer(count); - - timers.stream() - .filter(t -> t.getId().equals(id)) - .findFirst() - .ifPresentOrElse( - existing -> { - existing.reset(ticks, count); - updated.add(existing); - }, - () -> updated.add(new ConsumableTimer( - new ItemConsumable(id, rodType), ticks, count))); - } - - timers.clear(); - timers.addAll(updated); - takeSnapshot(pattern, level); - } - - public boolean tick(ReactorInputManagerI manager, Level level) { - boolean consumed = false; - Iterator it = timers.iterator(); - - while (it.hasNext()) { - ConsumableTimer timer = it.next(); - if (timer.tick()) { - timer.getConsumable().consume(manager, level); - consumed = true; - - if (timer.getCountInPattern() > 1) { - timer.reset(timer.getMaxTicks(), timer.getCountInPattern()); - } else { - it.remove(); - } - } - } - return consumed; - } - - public boolean hasPatternChanged(ItemStack pattern, Level level) { - Map current = readItemIds(pattern, level); - if (current.size() != patternSnapshot.size()) - return true; - for (Map.Entry e : current.entrySet()) - if (!e.getValue().equals(patternSnapshot.get(e.getKey()))) - return true; - return false; - } - - public boolean isEmpty() { - return timers.isEmpty(); - } - - public void clear() { - timers.clear(); - patternSnapshot.clear(); - } - - public CompoundTag serializeNBT() { - ListTag list = new ListTag(); - timers.forEach(t -> list.add(t.serializeNBT())); - CompoundTag tag = new CompoundTag(); - tag.put("timers", list); - CompoundTag snap = new CompoundTag(); - patternSnapshot.forEach(snap::putInt); - tag.put("snapshot", snap); - return tag; - } - - public void deserializeNBT(CompoundTag tag) { - timers.clear(); - tag.getList("timers", Tag.TAG_COMPOUND) - .forEach(t -> timers.add(ConsumableTimer.deserializeNBT((CompoundTag) t))); - CompoundTag snap = tag.getCompound("snapshot"); - snap.getAllKeys().forEach(k -> patternSnapshot.put(k, snap.getInt(k))); - } - - private void buildTimers(ItemStack pattern, Level level) { - PatternReader.readItemCounts(pattern).forEach((item, count) -> { - RodType rodType = RodType.resolveRodType(item, level); - if (!rodType.isNotEmptyItem()) - return; - String id = ForgeRegistries.ITEMS.getKey(item).getPath(); - int ticks = new ItemConsumable(id, rodType).computeTimer(count); - timers.add(new ConsumableTimer(new ItemConsumable(id, rodType), ticks, count)); - }); - } - - private void takeSnapshot(ItemStack pattern, Level level) { - patternSnapshot = readItemIds(pattern, level); - } - - private Map readItemIds(ItemStack pattern, Level level) { - Map result = new HashMap<>(); - PatternReader.readItemCounts(pattern).forEach((item, count) -> { - RodType rt = RodType.resolveRodType(item, level); - if (rt.isNotEmptyItem()) - result.put(ForgeRegistries.ITEMS.getKey(item).getPath(), count); - }); - return result; - } - - /** - * Advances the consumption cycle by one tick: starts a cycle if none is - * running and the pattern isn't empty, resets it if the pattern changed - * (only checked when {@code checkPatternChange} is true), then ticks the - * current cycle. - * - * @param checkPatternChange if {@code false}, the pattern change isn't - * checked this tick (used to throttle the check's frequency) - */ - public void update(ItemStack pattern, Level level, ReactorInputManagerI inputManager, boolean checkPatternChange) { - boolean emptyPattern = pattern.isEmpty() || pattern.getOrCreateTag().isEmpty(); - if (isEmpty() && !emptyPattern) { - startCycle(pattern, level); - } - - if (!isEmpty()) { - if (checkPatternChange && hasPatternChanged(pattern, level)) { - resetCycle(pattern, level, inputManager); - } - tick(inputManager, level); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/FluidConsumable.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/FluidConsumable.java deleted file mode 100644 index be34dc997..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/FluidConsumable.java +++ /dev/null @@ -1,49 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputManagerI; - -public class FluidConsumable implements IConsumable { - private final String fluidName; - private final int mbPerCycle; - private final int baseTicks; - - public FluidConsumable(String fluidName, int mbPerCycle, int baseTicks) { - this.fluidName = fluidName; - this.mbPerCycle = mbPerCycle; - this.baseTicks = baseTicks; - } - - @Override - public String getId() { - return fluidName; - } - - @Override - public int computeTimer(int count) { - return Math.max(1, baseTicks); - } - - @Override - public boolean consume(ReactorInputManagerI manager, Level level) { - return false; - } - - @Override - public CompoundTag serializeNBT() { - CompoundTag tag = new CompoundTag(); - tag.putString("type", "fluid"); - tag.putString("fluidName", fluidName); - tag.putInt("mbPerCycle", mbPerCycle); - tag.putInt("baseTicks", baseTicks); - return tag; - } - - public static FluidConsumable deserializeNBT(CompoundTag tag) { - return new FluidConsumable( - tag.getString("fluidName"), - tag.getInt("mbPerCycle"), - tag.getInt("baseTicks")); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/IConsumable.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/IConsumable.java deleted file mode 100644 index 21d0ee52c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/IConsumable.java +++ /dev/null @@ -1,24 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputManagerI; - -public interface IConsumable { - String getId(); - - int computeTimer(int countInPattern); - - boolean consume(ReactorInputManagerI manager, Level level); - - CompoundTag serializeNBT(); - - static IConsumable deserializeNBT(CompoundTag tag) { - return switch (tag.getString("type")) { - case "item" -> ItemConsumable.deserializeNBT(tag); - case "fluid" -> FluidConsumable.deserializeNBT(tag); - default -> throw new IllegalArgumentException( - "Unknown consumable type: " + tag.getString("type")); - }; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ItemConsumable.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ItemConsumable.java deleted file mode 100644 index 556b554f7..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/ItemConsumable.java +++ /dev/null @@ -1,45 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputManagerI; - -public class ItemConsumable implements IConsumable { - private final String itemName; - private final RodType rodType; - - public ItemConsumable(String itemName, RodType rodType) { - this.itemName = itemName; - this.rodType = rodType; - } - - @Override - public String getId() { - return itemName; - } - - @Override - public int computeTimer(int count) { - int base = Math.max(1, rodType.rodTimer().get()); - return Math.max(1, (int) (base / Math.max(1, count))); - } - - @Override - public boolean consume(ReactorInputManagerI manager, Level level) { - return manager.extractItemByName(level, itemName); - } - - @Override - public CompoundTag serializeNBT() { - CompoundTag tag = new CompoundTag(); - tag.putString("type", "item"); - tag.putString("itemName", itemName); - return tag; - } - - public static ItemConsumable deserializeNBT(CompoundTag tag) { - String itemName = tag.getString("itemName"); - return new ItemConsumable(itemName, null); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/PatternReader.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/PatternReader.java deleted file mode 100644 index a5d6de307..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/consumable/PatternReader.java +++ /dev/null @@ -1,39 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.consumable; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; -import net.minecraftforge.items.ItemStackHandler; - -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -public final class PatternReader { - - private PatternReader() { - } - - public static Map readItemCounts(ItemStack configuredPattern) { - CompoundTag tag = configuredPattern.getTag(); - if (tag == null || tag.isEmpty()) - return Collections.emptyMap(); - - ItemStackHandler handler = new ItemStackHandler(57); - if (tag.contains("patternAll")) - handler.deserializeNBT(tag.getCompound("patternAll")); - else if (tag.contains("pattern")) - handler.deserializeNBT(tag.getCompound("pattern")); - else - return Collections.emptyMap(); - - Map counts = new HashMap<>(); - for (int i = 0; i < handler.getSlots(); i++) { - ItemStack stack = handler.getStackInSlot(i); - if (!stack.isEmpty() && !stack.is(Items.GLASS_PANE)) - counts.merge(stack.getItem(), 1, Integer::sum); - } - return counts; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorDisplayState.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorDisplayState.java deleted file mode 100644 index d0755ecc5..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorDisplayState.java +++ /dev/null @@ -1,134 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.display; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.Item; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -/** - * Immutable snapshot of the data the reactor controller exposes for client-side - * display (e.g. the Goggles tooltip rendered by {@link ReactorGoggleTooltipRenderer}). - *

- * Instances are produced server-side once per tick from the live input inventories - * and tanks, then synced to the client through the block entity's {@code clientPacket} - * NBT via {@link #serializeNBT()} / {@link #deserializeNBT(CompoundTag)}. This data is - * transient sync data only: it is not part of the persisted save NBT, so its layout - * can evolve freely without migration concerns. - *

- * Usage: - *

{@code
- * // Server side, e.g. in tick():
- * this.displayState = new ReactorDisplayState(items, fluids, maxFluidCapacity);
- *
- * // Writing the client packet:
- * compound.put("displayState", displayState.serializeNBT());
- *
- * // Reading the client packet:
- * displayState = compound.contains("displayState")
- *         ? ReactorDisplayState.deserializeNBT(compound.getCompound("displayState"))
- *         : ReactorDisplayState.EMPTY;
- * }
- * - * @param items item rods currently loaded, mapped to their stacked count - * @param fluids fluids currently loaded in the input tanks - * @param maxFluidCapacity combined capacity (in millibuckets) of all input fluid tanks - */ -public record ReactorDisplayState(Map items, List fluids, long maxFluidCapacity) { - static final String COMPONENT_ITEM = "Item"; - static final String COMPONENT_COUNT = "Count"; - static final String COMPONENT_CLIENT_DISPLAY_ITEMS = "clientDisplayItems"; - static final String COMPONENT_CLIENT_DISPLAY_FLUIDS = "clientDisplayFluids"; - static final String COMPONENT_CLIENT_MAX_FLUIDS_CAPACITY = "clientMaxFluidCapacity"; - - /** - * Shared empty instance, used before the first tick has populated any display - * data and as the fallback when the client packet doesn't carry a display state. - */ - public static final ReactorDisplayState EMPTY = new ReactorDisplayState(Map.of(), List.of(), 0); - - /** - * Defensively copies the given collections so the record stays immutable - * regardless of how the caller's collections are mutated afterwards. - */ - public ReactorDisplayState { - items = Map.copyOf(items); - fluids = List.copyOf(fluids); - } - - /** - * Serializes this state into NBT for inclusion in the block entity's - * {@code clientPacket} data. Pair with {@link #deserializeNBT(CompoundTag)} - * to restore an equivalent instance on the client. - * - * @return a new {@link CompoundTag} containing the serialized item map, - * fluid list and max fluid capacity - */ - public CompoundTag serializeNBT() { - CompoundTag compound = new CompoundTag(); - - ListTag displayItemsTag = new ListTag(); - for (Entry entry : items().entrySet()) { - CompoundTag tag = new CompoundTag(); - tag.putString(COMPONENT_ITEM, ForgeRegistries.ITEMS.getKey(entry.getKey()).toString()); - tag.putInt(COMPONENT_COUNT, entry.getValue()); - displayItemsTag.add(tag); - } - compound.put(COMPONENT_CLIENT_DISPLAY_ITEMS, displayItemsTag); - - ListTag displayFluidsTag = new ListTag(); - for (BigFluidStack stack : fluids()) { - displayFluidsTag.add(stack.write()); - } - compound.put(COMPONENT_CLIENT_DISPLAY_FLUIDS, displayFluidsTag); - - compound.putLong(COMPONENT_CLIENT_MAX_FLUIDS_CAPACITY, maxFluidCapacity()); - - return compound; - } - - /** - * Reconstructs a {@link ReactorDisplayState} from NBT previously produced by - * {@link #serializeNBT()}. Acts as a static factory since records cannot be - * mutated in place. - *

- * Missing keys are treated as empty/zero, so a compound that contains none of - * the expected entries yields an instance equivalent to {@link #EMPTY}. - * - * @param compound the {@code displayState} compound from the client packet - * @return a new immutable {@link ReactorDisplayState} built from the given NBT - */ - public static ReactorDisplayState deserializeNBT(CompoundTag compound) { - Map items = new HashMap<>(); - if (compound.contains(COMPONENT_CLIENT_DISPLAY_ITEMS)) { - ListTag list = compound.getList(COMPONENT_CLIENT_DISPLAY_ITEMS, Tag.TAG_COMPOUND); - for (int i = 0; i < list.size(); i++) { - CompoundTag tag = list.getCompound(i); - Item item = ForgeRegistries.ITEMS.getValue(new ResourceLocation(tag.getString(COMPONENT_ITEM))); - if (item != null) { - items.put(item, tag.getInt(COMPONENT_COUNT)); - } - } - } - - List fluids = new ArrayList<>(); - if (compound.contains(COMPONENT_CLIENT_DISPLAY_FLUIDS)) { - ListTag list = compound.getList(COMPONENT_CLIENT_DISPLAY_FLUIDS, Tag.TAG_COMPOUND); - for (int i = 0; i < list.size(); i++) { - fluids.add(BigFluidStack.read(list.getCompound(i))); - } - } - - long maxFluidCapacity = compound.getLong(COMPONENT_CLIENT_MAX_FLUIDS_CAPACITY); - - return new ReactorDisplayState(items, fluids, maxFluidCapacity); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorGoggleTooltipRenderer.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorGoggleTooltipRenderer.java deleted file mode 100644 index 20bca73b4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/display/ReactorGoggleTooltipRenderer.java +++ /dev/null @@ -1,142 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.display; - -import com.simibubi.create.foundation.item.TooltipHelper; -import com.simibubi.create.foundation.utility.CreateLang; -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -import java.util.List; -import java.util.Map; - -/** - * Builds the Goggles tooltip shown when looking at an assembled reactor controller. - *

- * This is a stateless presentation helper: it only reads from a - * {@link ReactorDisplayState} snapshot (plus the current heat level) and appends the - * resulting lines to the tooltip. It performs no NBT access, inventory lookups or - * other block-entity-specific logic, keeping the rendering separate from the block - * entity's data/state management. - *

- * Typical usage from {@code ReactorControllerBlockEntity#addToGoggleTooltip}: - *

{@code
- * @Override
- * public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- *     CompoundTag patternTag = this.getConfiguredPatternTag();
- *     if (patternTag == null || patternTag.isEmpty()) {
- *         return false;
- *     }
- *     ReactorGoggleTooltipRenderer.render(tooltip, displayState, patternTag.getInt("heat"), isPlayerSneaking);
- *     return true;
- * }
- * }
- */ -public final class ReactorGoggleTooltipRenderer { - private ReactorGoggleTooltipRenderer() {} - - /** - * Appends the reactor controller's Goggles tooltip lines to {@code tooltip}. - *

- * Renders, in order: the gauge info header, the reactor heat level, the loaded - * item rods (or a placeholder if none), and the loaded fluids with their fill - * ratio as a progress bar (or a placeholder if none). - * - * @param tooltip the tooltip line list to append to - * @param state the current display snapshot (items, fluids, max fluid capacity) - * @param heat the reactor's current heat value, used to render the heat tooltip line - * @param isPlayerSneaking whether the viewing player is sneaking (currently unused, - * kept for signature parity with other goggle tooltip providers) - */ - public static void render(List tooltip, ReactorDisplayState state, int heat, boolean isPlayerSneaking, int reactorSize) { - renderHeaderAndHeat(tooltip, heat, reactorSize); - renderItemRods(tooltip, state); - renderFluidTanks(tooltip, state); - } - - /** - * Appends the gauge info header and the reactor's current heat level line. - * - * @param tooltip the tooltip line list to append to - * @param heat the reactor's current heat value - */ - private static void renderHeaderAndHeat(List tooltip, int heat, int reactorSize) { - CreateLang.translate("gui.gauge.info_header") - .style(ChatFormatting.GRAY) - .forGoggles(tooltip); - IHeat.HeatLevel.getName("reactor_controller").style(ChatFormatting.GRAY).forGoggles(tooltip); - - IHeat.HeatLevel.getFormattedHeatText(heat, reactorSize).forGoggles(tooltip); - } - - /** - * Appends one line per loaded item rod with its stacked count, or a placeholder - * line showing a count of 0 if no rods are loaded. - * - * @param tooltip the tooltip line list to append to - * @param state the current display snapshot - */ - private static void renderItemRods(List tooltip, ReactorDisplayState state) { - if (state.items().isEmpty()) { - CreateNuclearLang.builder() - .add(Component.translatable("createnuclear.tooltip.item.empty.rod").withStyle(ChatFormatting.GRAY)) - .add(CreateNuclearLang.number(0).style(ChatFormatting.GOLD)) - .forGoggles(tooltip); - } else { - for (Map.Entry entry : state.items().entrySet()) { - ItemStack stack = new ItemStack(entry.getKey()); - int count = entry.getValue(); - CreateNuclearLang.itemName(stack) - .style(ChatFormatting.GRAY) - .text(": ") - .add(CreateNuclearLang.number(count).style(ChatFormatting.GOLD)) - .forGoggles(tooltip); - } - } - } - - /** - * Appends one line per loaded fluid with a fill-ratio progress bar relative to - * {@link ReactorDisplayState#maxFluidCapacity()}, or a "no fluid" placeholder - * with an empty progress bar if no fluids are loaded. - * - * @param tooltip the tooltip line list to append to - * @param state the current display snapshot - */ - private static void renderFluidTanks(List tooltip, ReactorDisplayState state) { - if (state.fluids().isEmpty()) { - CreateNuclearLang.translate("tooltip.fluid.none") - .style(ChatFormatting.GRAY) - .forGoggles(tooltip); - - CreateNuclearLang.builder() - .text(TooltipHelper.makeProgressBar(5, 0)) - .style(ChatFormatting.BLUE) - .space() - .text("0%") - .forGoggles(tooltip); - } else { - long maxCapacity = state.maxFluidCapacity(); - for (BigFluidStack stack : state.fluids()) { - float fillRatio = maxCapacity > 0 ? (float) stack.amount / maxCapacity : 0; - if (fillRatio >= 0.99f) - fillRatio = 1.0f; - int filledBars = Math.round(fillRatio * 5); - - CreateNuclearLang.translate("tooltip.fluid", stack.stack.getDisplayName()) - .style(ChatFormatting.GRAY) - .forGoggles(tooltip); - - CreateNuclearLang.builder() - .text(TooltipHelper.makeProgressBar(5, filledBars)) - .style(ChatFormatting.BLUE) - .space() - .text(Math.round(fillRatio * 100) + "%") - .forGoggles(tooltip); - } - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/AbstractReactorIOManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/AbstractReactorIOManager.java deleted file mode 100644 index b1333cb1a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/AbstractReactorIOManager.java +++ /dev/null @@ -1,89 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -/** - * Abstract base providing common implementation for managing - * positions used by IO managers (inputs / outputs). - * - * This class holds a collection of `BlockPos` instances and exposes - * basic operations (add, remove, contains, iteration via `resolveBlock`). - * Serialization (`read`/`write`) and validation (`clearInvalid`) are - * left abstract for concrete implementations to provide. - */ -public abstract class AbstractReactorIOManager implements ReactorIOManager { - /** List of `BlockPos` instances tracked by this manager. */ - protected final List positions = new ArrayList<>(); - - /** - * Adds `pos` if non-null and not already present; returns true when added. - */ - @Override - public void addBlock(BlockPos pos) { - if (pos == null) return; - if (!contains(pos)) { - positions.add(pos); - } - } - - /** - * Removes `pos` if present. - */ - @Override - public void removeBlock(BlockPos pos) { - positions.remove(pos); - } - - /** Tests whether `pos` is present. */ - @Override - public boolean contains(BlockPos pos) { - return positions.contains(pos); - } - - /** Returns the current number of tracked positions. */ - @Override - public int size() { - return positions.size(); - } - - /** Returns an immutable copy of the tracked positions. */ - @Override - public List getBlocksPosition() { - return List.copyOf(positions); - } - - /** - * Resolves each position with `resolver` and returns a list of non-null results. - * Useful to convert positions to block entities or handlers. - */ - @Override - public List resolveBlock(Level level, Function resolver) { - List result = new ArrayList<>(); - for (BlockPos p: new ArrayList<>(positions)) { - T r = resolver.apply(p); - if (r != null) result.add(r); - } - return result; - } - - /** Serialization: implementation provided by subclasses. */ - @Override - public abstract void read(CompoundTag compound); - - /** Deserialization: implementation provided by subclasses. */ - @Override - public abstract void write(CompoundTag compound); - - /** - * Removes invalid positions (e.g. unloaded chunk, missing block entity). - * Subclasses must implement manager-specific validation logic. - */ - @Override - public abstract void clearInvalid(Level level); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManager.java deleted file mode 100644 index 7176af62b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManager.java +++ /dev/null @@ -1,71 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.alarm.ReactorAlarmEntity; - -import java.util.ArrayList; -import java.util.List; - -public class ReactorAlarmManager extends AbstractReactorIOManager implements ReactorAlarmManagerI { - private static final String NBT_KEY = "ReactorAlarms"; - - @Override - public void write(CompoundTag compound) { - ListTag list = new ListTag(); - for (BlockPos pos : positions) { - CompoundTag tag = new CompoundTag(); - tag.putInt("x", pos.getX()); - tag.putInt("y", pos.getY()); - tag.putInt("z", pos.getZ()); - list.add(tag); - } - compound.put(NBT_KEY, list); - } - - @Override - public void read(CompoundTag compound) { - positions.clear(); - if (!compound.contains(NBT_KEY)) return; - ListTag list = compound.getList(NBT_KEY, Tag.TAG_COMPOUND); - for (int i = 0; i < list.size(); ++i) { - CompoundTag tag = list.getCompound(i); - positions.add(new BlockPos(tag.getInt("x"), tag.getInt("y"), tag.getInt("z"))); - } - } - - @Override - public void clearInvalid(Level level) { - if (level == null) return; - List toRemove = new ArrayList<>(); - - for (BlockPos p : positions) { - if (!level.isLoaded(p)) continue; // Don't remove the position if the chunk is merely unloaded - - BlockEntity be = level.getBlockEntity(p); - // Mark for removal if the block no longer exists or is no longer an alarm - if (be == null || !(be instanceof ReactorAlarmEntity)) { - toRemove.add(p); - } - } - positions.removeAll(toRemove); - } - - @Override - public List getBlocksPosition(Level level) { - if (level == null) return List.of(); - - List validPositions = new ArrayList<>(); - for (BlockPos p : this.positions) { - // Check that the block entity is loaded and of the expected type - if (level.isLoaded(p) && level.getBlockEntity(p) instanceof ReactorAlarmEntity) { - validPositions.add(p); - } - } - return List.copyOf(validPositions); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManagerI.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManagerI.java deleted file mode 100644 index cdd538cd4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorAlarmManagerI.java +++ /dev/null @@ -1,12 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import java.util.List; - -public interface ReactorAlarmManagerI extends ReactorIOManager { - /** - * Returns an immutable copy of the currently valid alarm positions in the given level. - */ - List getBlocksPosition(Level level); -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManager.java deleted file mode 100644 index cc9f239b7..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManager.java +++ /dev/null @@ -1,135 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; -import org.jetbrains.annotations.Nullable; - -public class ReactorFrameDisplayManager implements ReactorFrameDisplayManagerI { - public static final String COMPONENT_FRAME_COLUMN_MIN_Y = "frameColumnMinY"; - public static final String COMPONENT_FRAME_COLUMN_MAX_Y = "frameColumnMaxY"; - - // Vertical span (block Y) of the reactor frame columns, used to map the - // fluid fill ratio onto the liquid actually drawn in the frame windows. - private int frameColumnMinY = Integer.MAX_VALUE; - private int frameColumnMaxY = Integer.MIN_VALUE; - - // Per-tick cache for the fluid drawn in the frame windows. Recomputed from the - // live (synced) input tanks so the displayed fluid and its fill ratio always - // come from the same source and stay consistent for every fluid type. - private long frameFluidCacheTick = -1; - private float frameFluidFillRatioCache = 0f; - - private FluidStack frameFluidCache = FluidStack.EMPTY; - - /** - * Returns the fluid currently held by the reactor, used by the frame - * renderer to draw the matching liquid in the window. On the client this - * reads the synced ; on the server it reads the - * aggregated . Returns {@link FluidStack#EMPTY} when - * the reactor holds no fluid. - *

- * Recomputes, at most once per game tick, the fluid shown in the frame - * windows and how full the input is. Both values are read from the same live - * input tanks (whose contents are synced to the client), so they always agree - * regardless of the fluid type. - */ - private void refreshFrameFluidCache(@Nullable Level level, ReactorInputFluidManagerI handlers) { - if (level == null) return; - long now = level.getGameTime(); - - if (now == frameFluidCacheTick) return; - frameFluidCacheTick = now; - - long amount = 0, capacity = 0; - FluidStack fluid = FluidStack.EMPTY; - - for (IFluidHandler handler : handlers.getFuildHandlers(level)) { - int tanks = handler.getTanks(); - for (int t = 0; t < tanks; t++) { - FluidStack stack = handler.getFluidInTank(t); - capacity += handler.getTankCapacity(t); - amount += stack.getAmount(); - - if (fluid.isEmpty() && !stack.isEmpty()) fluid = stack.copy(); - } - } - - frameFluidCache = fluid; - frameFluidFillRatioCache = capacity > 0 ? Math.min(1f, (float) amount / (float) capacity) : 0f; - } - - /** - * The fluid currently shown in the reactor frame windows (may be empty). - */ - @Override - public FluidStack getDisplayedFluid(Level level, ReactorInputFluidManagerI handlers) { - refreshFrameFluidCache(level, handlers); - - return frameFluidCache; - } - - /** - * How full the reactor's fluid input is, in the range {@code [0, 1]}, used by - * the frame renderer to size the visible liquid column. - */ - @Override - public float getDisplayedFluidFillRatio(Level level, ReactorInputFluidManagerI handlers) { - refreshFrameFluidCache(level, handlers); - - return frameFluidFillRatioCache; - } - - /** - * Records the lowest and highest frame block-Y of the assembled reactor. - */ - @Override - public void setFrameColumn(int minY, int maxY, Runnable onChange) { - if (this.frameColumnMinY == minY && this.frameColumnMaxY == maxY) return; - this.frameColumnMinY = minY; - this.frameColumnMaxY = maxY; - onChange.run(); - } - - /** - * @return the lowest frame block-Y, or {@link Integer#MAX_VALUE} if unknown. - */ - @Override - public int getFrameColumnMinY() { - return frameColumnMinY; - } - - /** - * @return the highest frame block-Y, or {@link Integer#MIN_VALUE} if unknown. - */ - @Override - public int getFrameColumnMaxY() { - return frameColumnMaxY; - } - - @Override - public boolean hasFrameColumn() { - return frameColumnMinY != Integer.MAX_VALUE && frameColumnMaxY != Integer.MIN_VALUE - && frameColumnMaxY >= frameColumnMinY; - } - - @Override - public void read(CompoundTag compound) { - if (compound.contains(COMPONENT_FRAME_COLUMN_MIN_Y)) { - frameColumnMinY = compound.getInt(COMPONENT_FRAME_COLUMN_MIN_Y); - } - - if (compound.contains(COMPONENT_FRAME_COLUMN_MAX_Y)) { - frameColumnMaxY = compound.getInt(COMPONENT_FRAME_COLUMN_MAX_Y); - } - } - - @Override - public void write(CompoundTag compound) { - if (hasFrameColumn()) { - compound.putInt(COMPONENT_FRAME_COLUMN_MIN_Y, frameColumnMinY); - compound.putInt(COMPONENT_FRAME_COLUMN_MAX_Y, frameColumnMaxY); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManagerI.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManagerI.java deleted file mode 100644 index 7203591b9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorFrameDisplayManagerI.java +++ /dev/null @@ -1,47 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; -import net.minecraftforge.fluids.FluidStack; - -/** - * Manages the display state of the reactor frame windows: the fluid shown, - * its fill ratio, and the vertical column bounds of the assembled frame. - */ -public interface ReactorFrameDisplayManagerI { - /** - * Returns the fluid currently shown in the reactor frame windows (may be - * empty). Recomputes the underlying cache at most once per game tick from - * the given fluid handlers. - */ - FluidStack getDisplayedFluid(Level level, ReactorInputFluidManagerI handlers); - - /** - * Returns how full the reactor's fluid input is, in the range {@code [0, 1]}. - * Recomputes the underlying cache at most once per game tick from the - * given fluid handlers. - */ - float getDisplayedFluidFillRatio(Level level, ReactorInputFluidManagerI handlers); - - /** - * Records the lowest and highest frame block-Y of the assembled reactor. - * If the values changed, {@code onChange} is invoked (e.g. to trigger a - * client sync via {@code notifyUpdate()}). - */ - void setFrameColumn(int minY, int maxY, Runnable onChange); - - /** @return the lowest frame block-Y, or {@link Integer#MAX_VALUE} if unknown. */ - int getFrameColumnMinY(); - - /** @return the highest frame block-Y, or {@link Integer#MIN_VALUE} if unknown. */ - int getFrameColumnMaxY(); - - /** @return true if both frame column bounds are known and consistent. */ - boolean hasFrameColumn(); - - /** Reads state from an NBT tag (deserialization). */ - void read(CompoundTag compound); - - /** Writes state to an NBT tag (serialization). */ - void write(CompoundTag compound); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorIOManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorIOManager.java deleted file mode 100644 index e51f8a9f4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorIOManager.java +++ /dev/null @@ -1,49 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.Level; - -import java.util.List; -import java.util.function.Function; - -/** - * Generic manager interface for reactor IO positions (inputs or outputs). - * Defines expected operations to manage a collection of `BlockPos` instances: - * serialization, validation, and resolution into concrete objects via a `resolver`. - */ -public interface ReactorIOManager { - /** Returns true when the position is known. */ - boolean contains(BlockPos pos); - - /** Current number of tracked positions. */ - int size(); - - /** Reads state from an NBT tag (deserialization). */ - void read(CompoundTag compound); - - /** Writes state to an NBT tag (serialization). */ - void write(CompoundTag compound); - - /** - * Adds a position; returns true if added. - */ - void addBlock(BlockPos pos); - - /** - * Removes a position; returns true if it was present and removed. - */ - void removeBlock(BlockPos pos); - - /** Returns an immutable copy of tracked positions. */ - List getBlocksPosition(); - - /** Removes invalid positions for the provided `level` (e.g. missing block entity). */ - void clearInvalid(Level level); - - /** - * Resolves each `BlockPos` into an instance using `resolver` and returns - * the list of non-null results. - */ - List resolveBlock(Level level, Function resolver); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManager.java deleted file mode 100644 index 62b3836d4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManager.java +++ /dev/null @@ -1,167 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.IFluidHandler.FluidAction; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.VirtualReactorInputFluid; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInputEntity; - -import java.util.ArrayList; -import java.util.List; - -public class ReactorInputFluidManager extends AbstractReactorIOManager implements ReactorInputFluidManagerI { - private static final String NBT_KEY = "ReactorInputFluid"; - - /** - * Manager that tracks fluid input blocks for a reactor. - * Responsible for serializing tracked positions, validating - * handlers, reporting aggregated inventory and extracting fluids. - */ - - @Override - /** - * Read tracked positions from NBT data. - * Existing positions are cleared before reading. - */ - public void read(CompoundTag compound) { - positions.clear(); - if (!compound.contains(NBT_KEY)) return; - ListTag list = compound.getList(NBT_KEY, Tag.TAG_COMPOUND); - for (int i = 0; i < list.size(); ++i) { - CompoundTag tag = list.getCompound(i); - positions.add(new BlockPos(tag.getInt("x"), tag.getInt("y"), tag.getInt("z"))); - } - } - - @Override - /** - * Write tracked positions to the provided NBT compound. - */ - public void write(CompoundTag compound) { - ListTag list = new ListTag(); - for (BlockPos pos : positions) { - CompoundTag tag = new CompoundTag(); - tag.putInt("x", pos.getX()); - tag.putInt("y", pos.getY()); - tag.putInt("z", pos.getZ()); - list.add(tag); - } - compound.put(NBT_KEY, list); - } - - @Override - /** - * Remove any tracked positions that are no longer valid in the given level. - */ - public void clearInvalid(Level level) { - List toRemove = new ArrayList<>(); - for (BlockPos p: positions) { - if (level == null || !level.isLoaded(p)) { - toRemove.add(p); - continue; - } - - BlockEntity be = level.getBlockEntity(p); - if (be == null) { - toRemove.add(p); - continue; - } - - LazyOptional cap = be.getCapability(ForgeCapabilities.FLUID_HANDLER); - if (cap == null || !cap.isPresent()) toRemove.add(p); - } - - positions.removeAll(toRemove); - } - - @Override - /** - * Return an immutable list of tracked block positions that correspond - * to fluid input entities in the given level. - */ - public List getBlocksPosition(Level level) { - List positions = new ArrayList<>(); - - for (BlockPos p : this.getBlocksPosition()) { - if (level.getBlockEntity(p) instanceof ReactorFluidInputEntity) positions.add(p); - } - return List.copyOf(positions); - } - - @Override - /** - * Collect and return fluid handler capabilities for all tracked positions. - */ - public List getFuildHandlers(Level level) { - List handlers = new ArrayList<>(); - for (BlockPos p : new ArrayList<>(positions)) { - if (level == null || !level.isLoaded(p)) continue; - BlockEntity be = level.getBlockEntity(p); - if (be == null) continue; - LazyOptional cap = be.getCapability(ForgeCapabilities.FLUID_HANDLER); - cap.ifPresent(handlers::add); - } - - return handlers; - } - - @Override - /** - * Build and return a virtual aggregated inventory of all input fluids. - */ - public VirtualReactorInputFluid getInventory(Level level) { - VirtualReactorInputFluid virtualReactorInputFluid = new VirtualReactorInputFluid(); - List handlers = this.getFuildHandlers(level); - if (handlers.isEmpty()) return virtualReactorInputFluid; - - for (IFluidHandler h : handlers) { - virtualReactorInputFluid.addFluid(h.getFluidInTank(0)); - } - - return virtualReactorInputFluid; - } - - /** - * Extracts up to {@code fluidNeeded} units of fluid, spread across the tracked handlers. - *

- * The requested amount is a TOTAL across every input, not a per-input quota: each handler - * only ever drains what is still missing, so a request of 10 units against two inputs - * holding 10 each removes 10 in total, not 20. - * - * @return {@code true} if at least one unit was actually drained. A partial extraction still - * returns {@code true}: the reactor consumes whatever coolant it can reach rather - * than refusing to run. - */ - @Override - public boolean extractFluids(Level level, int fluidNeeded) { - if (level == null || fluidNeeded <= 0) return false; - List handlers = getFuildHandlers(level); - if (handlers.isEmpty()) return false; - - int remaining = fluidNeeded; - - for (IFluidHandler handler : handlers) { - if (remaining <= 0) break; - - FluidStack stack = handler.getFluidInTank(0); - if (stack.isEmpty()) continue; - - int toExtract = Math.min(remaining, stack.getAmount()); - if (toExtract <= 0) continue; - - // Subtract what was actually drained, not what was asked for: a handler is free to - // hand back less than requested. - remaining -= handler.drain(toExtract, FluidAction.EXECUTE).getAmount(); - } - - return remaining < fluidNeeded; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManagerI.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManagerI.java deleted file mode 100644 index e809ae2df..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputFluidManagerI.java +++ /dev/null @@ -1,38 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.VirtualReactorInputFluid; - -import java.util.List; - -/** - * Interface for managing reactor input fluids. - * Implementations track input fluid sources and provide - * accessors and extraction methods for reactor consumption. - */ -public interface ReactorInputFluidManagerI extends ReactorIOManager { - /** Returns an immutable copy of tracked positions. */ - List getBlocksPosition(Level level); - - /** - * Returns a list of fluid handler capabilities for the tracked positions. - * @param level the current world level - */ - List getFuildHandlers(Level level); - - /** - * Returns a virtual aggregated inventory representing all tracked input fluids. - * @param level the current world level - */ - VirtualReactorInputFluid getInventory(Level level); - - /** - * Attempt to extract the requested amount of fluid from tracked sources. - * @param level current world level - * @param fluidNeeded amount of fluid required - * @return true if the requested amount was successfully extracted - */ - boolean extractFluids(Level level, int fluidNeeded); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManager.java deleted file mode 100644 index 01a18c184..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManager.java +++ /dev/null @@ -1,195 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraft.world.Container; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; -import net.nuclearteam.createnuclear.content.multiblock.input.item.VirtualReactorInputsItem; -import net.nuclearteam.createnuclear.content.multiblock.input.item.ReactorRodInputEntity; - -import java.util.ArrayList; -import java.util.List; - -/** - * Manager for reactor input positions (`ReactorInput`). - * - * Serializes positions as x/y/z triplets and provides utilities to - * obtain valid `IItemHandler` instances present at those positions. - */ -public class ReactorInputManager extends AbstractReactorIOManager implements ReactorInputManagerI { - private static final String NBT_KEY = "ReactorInput"; - - @Override - public void write(CompoundTag compound) { - ListTag list = new ListTag(); - for (BlockPos pos : positions) { - CompoundTag tag = new CompoundTag(); - tag.putInt("x", pos.getX()); - tag.putInt("y", pos.getY()); - tag.putInt("z", pos.getZ()); - list.add(tag); - } - compound.put(NBT_KEY, list); - } - - @Override - public void read(CompoundTag compound) { - positions.clear(); - if (!compound.contains(NBT_KEY)) return; - ListTag list = compound.getList(NBT_KEY, Tag.TAG_COMPOUND); - for (int i = 0; i < list.size(); ++i) { - CompoundTag tag = list.getCompound(i); - positions.add(new BlockPos(tag.getInt("x"), tag.getInt("y"), tag.getInt("z"))); - } - } - - /** - * Retrieves all `IItemHandler` instances located at the input positions. - * Returns an empty list when no handlers are found. - */ - @Override - public List getItemHandlers(Level level) { - List handlers = new ArrayList<>(); - for (BlockPos p: new ArrayList<>(positions)) { - if (level == null || !level.isLoaded(p)) continue; - BlockEntity be = level.getBlockEntity(p); - if (be == null) continue; - LazyOptional cap = be.getCapability(ForgeCapabilities.ITEM_HANDLER); - cap.ifPresent(handlers::add); - } - - return handlers; - } - - @Override - public VirtualReactorInputsItem getInventory(Level level) { - List handlers = this.getItemHandlers(level); - if (handlers.isEmpty()) return new VirtualReactorInputsItem(); - - int totalFuel = 0; - int totalCooler = 0; - for (IItemHandler h : handlers) { - int slots = h.getSlots(); - for (int s = 0; s < slots; s++) { - ItemStack st = h.getStackInSlot(s); - - if (TypeRodPredicate.isFuel(st, level)) totalFuel += st.getCount(); - else if (TypeRodPredicate.isCooled(st, level)) totalCooler += st.getCount(); - } - } - - return new VirtualReactorInputsItem(totalFuel, totalCooler); - } - - @Override - public boolean extractItems(Level level, int fuelNeeded, int coolerNeeded) { - if (level == null) return false; - List handlers = getItemHandlers(level); - if (handlers.isEmpty()) return false; - - int fuelRemaining = fuelNeeded; - int coolerRemaining = coolerNeeded; - - for (IItemHandler handler : handlers) { - int slots = handler.getSlots(); - for (int s = 0; s < slots && (fuelRemaining > 0 || coolerRemaining > 0); s++) { - ItemStack stack = handler.getStackInSlot(s); - if (stack.isEmpty()) continue; - - - if (fuelRemaining > 0 && TypeRodPredicate.isFuel(stack, level)) { - int toExtract = Math.min(fuelRemaining, stack.getCount()); - handler.extractItem(s, toExtract, false); - fuelRemaining -= toExtract; - } else if (coolerRemaining > 0 && TypeRodPredicate.isCooled(stack, level)) { - int toExtract = Math.min(coolerRemaining, stack.getCount()); - handler.extractItem(s, toExtract, false); - coolerRemaining -= toExtract; - } - } - if (fuelRemaining <= 0 && coolerRemaining <= 0) break; - } - - return fuelRemaining <= 0 && coolerRemaining <= 0; - } - - public boolean extractItemByName(Level level, String itemName) { - if (level == null || itemName == null) return false; - - List handlers = getItemHandlers(level); - if (handlers.isEmpty()) return false; - - for (IItemHandler handler : handlers) { - int slots = handler.getSlots(); - for (int s = 0; s < slots; s++) { - ItemStack stack = handler.getStackInSlot(s); - if (stack.isEmpty()) continue; - - // Resolve the item's registry name (e.g. "uranium_rod") - String registryPath = ForgeRegistries.ITEMS.getKey(stack.getItem()).getPath(); - - // Lenient comparison: ignores case and underscores (_) - if (isMatching(registryPath, itemName)) { - // Attempt to extract 1 unit - ItemStack extracted = handler.extractItem(s, 1, false); - - // If extraction succeeded, stop here and return true - if (!extracted.isEmpty()) { - return true; - } - } - } - } - - return false; // The requested item was not found - } - - /** - * Helper to compare names like "GraphiteRod" against "graphite_rod" - * (case-insensitive, underscore-insensitive). - */ - private boolean isMatching(String registryPath, String configName) { - String cleanPath = registryPath.replace("_", "").toLowerCase(); - String cleanConfig = configName.replace("_", "").toLowerCase(); - return cleanPath.equals(cleanConfig); - } - - /** - * Cleans up invalid positions (unloaded chunk, missing block entity, - * or not a `Container`). - */ - @Override - public void clearInvalid(Level level) { - List toRemove = new ArrayList<>(); - for (BlockPos p: positions) { - if (level == null || !level.isLoaded(p)) { - toRemove.add(p); - continue; - } - - BlockEntity be = level.getBlockEntity(p); - if (be == null || !(be instanceof Container)) toRemove.add(p); - } - - positions.removeAll(toRemove); - } - - @Override - public List getBlocksPosition(Level level) { - List positions = new ArrayList<>(); - - for (BlockPos p : this.getBlocksPosition()) { - if (level.getBlockEntity(p) instanceof ReactorRodInputEntity) positions.add(p); - } - return List.copyOf(positions); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManagerI.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManagerI.java deleted file mode 100644 index 08e81a86a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorInputManagerI.java +++ /dev/null @@ -1,28 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.minecraftforge.items.IItemHandler; -import net.nuclearteam.createnuclear.content.multiblock.input.item.VirtualReactorInputsItem; - -import java.util.List; - -/** - * Interface exposing operations specific to reactor inputs. - * Currently, provides access to `IItemHandler` instances at resolved input positions. - */ -public interface ReactorInputManagerI extends ReactorIOManager { - /** - * Retrieves valid item handlers for the given `level`. - * May return an empty list if no valid positions exist. - */ - List getItemHandlers(Level level); - - /** Returns an immutable copy of tracked positions. */ - List getBlocksPosition(Level level); - - VirtualReactorInputsItem getInventory(Level level); - - boolean extractItems(Level level, int fuelNeeded, int coolerNeeded); - boolean extractItemByName(Level level, String itemName); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManager.java deleted file mode 100644 index cb6616a54..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManager.java +++ /dev/null @@ -1,114 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutput; -import net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutputEntity; - -import java.util.ArrayList; -import java.util.List; - -/** - * Manager for a reactor's outputs (`ReactorOutput`). - * Handles serialization of output positions. - */ -public class ReactorOutputManager extends AbstractReactorIOManager implements ReactorOutputManagerI { - private static final String NBT_KEY = "ReactorOutputs"; - public static final int RPM_DIVIDER = 32; - - @Override - public void write(CompoundTag compound) { - ListTag list = new ListTag(); - for (BlockPos p : positions) { - CompoundTag t = new CompoundTag(); - t.putLong("p", p.asLong()); - list.add(t); - } - compound.put(NBT_KEY, list); - } - - @Override - public void read(CompoundTag compound) { - positions.clear(); - if (!compound.contains(NBT_KEY)) return; - ListTag list = compound.getList(NBT_KEY, 10); - for (int i = 0; i < list.size(); i++) { - BlockPos p = BlockPos.of(list.getCompound(i).getLong("p")); - positions.add(p); - } - } - - /** - * {@inheritDoc} - * A tracked position is dropped if its chunk isn't loaded or the block - * entity at that position is no longer a {@link ReactorOutputEntity}. - */ - @Override - public void clearInvalid(Level level) { - List toRemove = new ArrayList<>(); - for (BlockPos p : positions) { - if (level == null || !level.isLoaded(p)) { - toRemove.add(p); - continue; - } - BlockEntity be = level.getBlockEntity(p); - if (!(be instanceof ReactorOutputEntity)) toRemove.add(p); - } - positions.removeAll(toRemove); - } - - /** - * {@inheritDoc} - * Filters the tracked positions down to those currently backed by a - * loaded {@link ReactorOutputEntity}. - */ - @Override - public List getBlocksPosition(Level level) { - List positions = new ArrayList<>(); - - for (BlockPos p : this.getBlocksPosition()) { - if (level.getBlockEntity(p) instanceof ReactorOutputEntity) positions.add(p); - } - return List.copyOf(positions); - } - - /** - * {@inheritDoc} - * The total rotation (in RPM, divided down by {@link #RPM_DIVIDER}) is - * split as evenly as possible across the tracked outputs, with the - * remainder distributed to the first outputs. Each output is set to its - * share of the rotation speed if the reactor is assembled, otherwise - * stopped. - */ - @Override - public void rotateOutputs(Level level, boolean assembled, int rotation) { - if (positions.isEmpty()) return; - - int totalRpm = rotation / RPM_DIVIDER; - int size = positions.size(); - int remainingRotation = totalRpm % size; - - for (int i = 0; i < size; i++) { - int dividedRotation = (totalRpm / size) + (i < remainingRotation ? 1 : 0); - BlockPos pos = positions.get(i); - - if (!(level.getBlockState(pos).getBlock() instanceof ReactorOutput block)) continue; - ReactorOutputEntity entity = block.getBlockEntityType().getBlockEntity(level, pos); - if (entity == null) continue; - - if (dividedRotation > 0) { - entity.speed = assembled ? dividedRotation : 0; - entity.updateSpeed = true; - entity.setSpeedAndUpdate(dividedRotation); - entity.updateGeneratedRotation(); - } else { - entity.setSpeedAndUpdate(0); - entity.updateSpeed = true; - entity.updateGeneratedRotation(); - } - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManagerI.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManagerI.java deleted file mode 100644 index ddc8b4b58..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/manager/ReactorOutputManagerI.java +++ /dev/null @@ -1,20 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.manager; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; - -import java.util.List; - -/** - * Interface exposing operations specific to reactor outputs. - */ -public interface ReactorOutputManagerI extends ReactorIOManager { - /** Returns an immutable copy of tracked positions. */ - List getBlocksPosition(Level level); - - /** - * Distributes the total rotation across the tracked outputs and applies - * the corresponding speed/stop to each {@code ReactorOutputEntity}. - */ - void rotateOutputs(Level level, boolean assembled, int rotation); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultHeatService.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultHeatService.java deleted file mode 100644 index 949962c1b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultHeatService.java +++ /dev/null @@ -1,26 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatBalance; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatManager; - -public class DefaultHeatService implements IHeatService { - private final HeatManager impl; - - public DefaultHeatService(HeatManager impl) { - this.impl = impl; - } - - @Override - public int getLiquidTimer() { - return impl.getLiquidTimer(); - } - - @Override - public double calculateHeat(BigFluidStack bigFluidStack, HeatBalance heatBalance, int previousHeat, ReactorControllerInventory inventory, Level level, ReactorDisplayState displayState) { - return impl.calculateHeat(bigFluidStack, heatBalance, previousHeat, inventory, level, displayState); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultPersistenceService.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultPersistenceService.java deleted file mode 100644 index 0e0ddd074..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/DefaultPersistenceService.java +++ /dev/null @@ -1,50 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.core.Direction; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.levelgen.structure.BoundingBox; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; - -public class DefaultPersistenceService implements IPersistenceService { - @Override - public void readBasicState(ReactorControllerBlockEntity owner, CompoundTag compound, boolean clientPacket) { - owner.setMultiblockSize(compound.getInt("reactorSize")); - owner.setMultiblockFacing(Direction.byName(compound.getString("reactorFacing"))); - - owner.setMultiblockStructure(compound.contains("reactorPose") - ? BoundingBox.CODEC.parse(NbtOps.INSTANCE, compound.get("reactorPose")).result().orElse(null) - : null - ); - - if (!clientPacket) { - owner.deserializeInventory(compound.getCompound("pattern")); - } else { - owner.setDisplayState(compound.contains("displayState") - ? ReactorDisplayState.deserializeNBT(compound.getCompound("displayState")) - : ReactorDisplayState.EMPTY - ); - } - owner.setConfiguredPattern(ItemStack.of(compound.getCompound("items"))); - - } - - @Override - public void writeBasicState(ReactorControllerBlockEntity owner, CompoundTag compound, boolean clientPacket) { - compound.putInt("reactorSize", owner.getMultiblockSize()); - compound.putString("reactorFacing", owner.getMultiblockFacing() != null ? owner.getMultiblockFacing().getSerializedName() : ""); - if (owner.getMultiblockPos() != null) { - compound.put("reactorPose", BoundingBox.CODEC.encodeStart(NbtOps.INSTANCE, owner.getMultiblockPos()).getOrThrow(false, IllegalStateException::new)); - } - - if (!clientPacket) { - compound.put("pattern", owner.serializeInventory()); - } else { - compound.put("displayState", owner.getDisplayState().serializeNBT()); - } - compound.put("items", owner.getConfiguredPattern().serializeNBT()); - - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/FluidConsumptionRateCalculator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/FluidConsumptionRateCalculator.java deleted file mode 100644 index 57c48cfa1..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/FluidConsumptionRateCalculator.java +++ /dev/null @@ -1,52 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManagerI; - -/** - * Default implementation of {@link IFluidConsumptionRateCalculator}. - * The rate per cycle depends on the fluid's efficiency and the liquid timer - * exposed by {@link IHeatService}, which itself depends on the reactor size. - */ -public class FluidConsumptionRateCalculator implements IFluidConsumptionRateCalculator { - private final IHeatService heatService; - - public FluidConsumptionRateCalculator(IHeatService heatService) { - this.heatService = heatService; - } - - /** - * {@inheritDoc} - * Does nothing if the fluid stack is {@code null} or holds a negligible - * amount (≤ 1). - */ - @Override - public double tick(BigFluidStack fluidStack, int reactorSize, Level level, - ReactorInputFluidManagerI inputFluidManager, double fluidBuffer) { - if (fluidStack == null || fluidStack.amount <= 1) { - return fluidBuffer; - } - - double amountPerCycle = fluidStack.getFluidtype(level).efficiency(); - switch (reactorSize) { - case 5 -> amountPerCycle /= (double) heatService.getLiquidTimer() / 40; - case 7 -> amountPerCycle /= (double) heatService.getLiquidTimer() / 147; - case 9 -> amountPerCycle /= (double) heatService.getLiquidTimer() / 360; - } - - fluidBuffer += amountPerCycle; - - if (fluidBuffer >= 1.0) { - int toExtract = (int) Math.floor(fluidBuffer); - // Known limitation in ReactorInputFluidManager#extractFluids: fluidNeeded is not - // decremented across multiple tracked input handlers, so each handler may drain up - // to toExtract independently (possible over-extraction with several inputs). - // Intentionally left untouched here; out of scope for this calculator. - if (inputFluidManager.extractFluids(level, toExtract)) { - fluidBuffer -= toExtract; - } - } - return fluidBuffer; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IExplosionService.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IExplosionService.java deleted file mode 100644 index 13fa18822..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IExplosionService.java +++ /dev/null @@ -1,17 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.core.BlockPos; -import net.minecraft.server.level.ServerLevel; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -public interface IExplosionService { - void triggerExplosion(ServerLevel level, BlockPos controllerPos, int reactorSize, int countFuelRod, - int notifyRadius, boolean notifyWarnAll); - - default void triggerExplosion(ServerLevel level, BlockPos controllerPos, int reactorSize, int countFuelRod) { - triggerExplosion(level, controllerPos, reactorSize, - countFuelRod, CNConfigs.server().notify.warningDistance.get(), - CNConfigs.server().notify.warnAllPlayers.get() - ); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IFluidConsumptionRateCalculator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IFluidConsumptionRateCalculator.java deleted file mode 100644 index 9a9830f58..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IFluidConsumptionRateCalculator.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManagerI; - -/** - * Computes how much fluid should be consumed per tick and triggers extraction - * once the accumulated amount reaches a whole unit. - */ -public interface IFluidConsumptionRateCalculator { - - /** - * Advances the consumption calculation by one tick. - * - * @param fluidStack fluid currently loaded, or {@code null} if none - * @param reactorSize reactor size, used to determine the consumption rate - * @param level current level, used to resolve the fluid type - * @param inputFluidManager input manager responsible for extracting the consumed fluid - * @param fluidBuffer fractional remainder accumulated since the previous tick - * @return the new fractional remainder to carry over to the next tick - */ - double tick(BigFluidStack fluidStack, int reactorSize, Level level, - ReactorInputFluidManagerI inputFluidManager, double fluidBuffer); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IHeatService.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IHeatService.java deleted file mode 100644 index ed396bdea..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IHeatService.java +++ /dev/null @@ -1,13 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatBalance; - -public interface IHeatService { - int getLiquidTimer(); - - double calculateHeat(BigFluidStack bigFluidStack, HeatBalance heatBalance, int previousHeat, ReactorControllerInventory inventory, Level level, ReactorDisplayState displayState); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IPersistenceService.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IPersistenceService.java deleted file mode 100644 index 98fe4c129..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IPersistenceService.java +++ /dev/null @@ -1,9 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.nbt.CompoundTag; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; - -public interface IPersistenceService { - void readBasicState(ReactorControllerBlockEntity owner, CompoundTag compound, boolean clientPacket); - void writeBasicState(ReactorControllerBlockEntity owner, CompoundTag compound, boolean clientPacket); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorAlarmCoordinator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorAlarmCoordinator.java deleted file mode 100644 index f83fe1237..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorAlarmCoordinator.java +++ /dev/null @@ -1,29 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorAlarmManagerI; - -/** - * Classifies the reactor's heat into a danger flag and drives the - * {@link net.nuclearteam.createnuclear.content.multiblock.alarm.ReactorAlarm} blocks - * registered in a {@link ReactorAlarmManagerI} accordingly. - */ -public interface IReactorAlarmCoordinator { - - /** - * @param heat the heat value to classify - * @param multiblockSize the reactor's multiblock size, used to resolve the danger threshold - * @return {@code true} if {@code heat} falls in the DANGER heat-level range - */ - boolean computeDanger(int heat, int multiblockSize); - - /** - * Powers on/off every alarm block known to {@code alarmManager} to match {@code isDanger}, - * and awards the SILENCE_THE_CORE advancement on the rising edge (alarm turning on). - * - * @param level the reactor's level - * @param alarmManager the manager holding the alarm block positions - * @param isDanger whether the alarms should be powered on - */ - void update(Level level, ReactorAlarmManagerI alarmManager, boolean isDanger); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorHeatUpdateCoordinator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorHeatUpdateCoordinator.java deleted file mode 100644 index a385c99db..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorHeatUpdateCoordinator.java +++ /dev/null @@ -1,82 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManagerI; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatBalance; - -/** - * Centralizes the reactor's heat calculation logic and the decision of - * whether it has enough fuel to run. - *

- * The {@link HeatBalance} consumed by {@link #updateHeatOnly} and - * {@link #calculateAndWriteHeat} is produced upstream by - * {@link #calculateHeatBalance}; callers resolve it once per tick and pass - * the result into both methods below. - */ -public interface IReactorHeatUpdateCoordinator { - - /** - * Computes the pattern's fuel/cooler heat balance (see {@link HeatBalance}), - * used to determine whether the reactor is within the wiki-reference 6:1 - * fuel:cooler equilibrium. - * - * @param configuredPattern the blueprint's configured pattern (required items) - * @param displayState snapshot of items/fluids currently available to the reactor, may be {@code null} - * @param level the level the reactor is in, used to resolve rod types - * @return the resolved heat balance for the pattern - */ - HeatBalance calculateHeatBalance(ItemStack configuredPattern, ReactorDisplayState displayState, Level level); - - /** - * Determines whether the reactor has enough fuel (FUEL-type rods) to start, - * on top of being assembled and having a fluid input. - * - * @param configuredPattern the blueprint's configured pattern (required items) - * @param displayState snapshot of items/fluids currently available to the reactor, may be {@code null} - * @param inputFluidManager the reactor's fluid input manager, used to check that at least one input exists - * @param level the level the reactor is in, used to resolve rod types - * @param assembled whether the multiblock is currently assembled - * @return {@code true} if every fuel rod required by the pattern is - * available and at least one fuel rod is required - */ - boolean canRun(ItemStack configuredPattern, ReactorDisplayState displayState, - ReactorInputFluidManagerI inputFluidManager, Level level, boolean assembled); - - /** - * Updates the heat without running the reactor (case where it isn't ready). - * Heat is only calculated if the full pattern (every required item, not - * just fuel) is available; otherwise it drops back to zero. - * - * @param configuredPattern the blueprint's configured pattern (required items) - * @param displayState snapshot of items/fluids currently available to the reactor, may be {@code null} - * @param fluidStack the reactor's current coolant fluid stack, may be {@code null} - * @param heatBalance the pattern's fuel/cooler heat balance for this tick - * @param previousHeat the heat value calculated on the previous tick - * @param inventory the reactor controller's inventory, used to read the configured pattern items - * @param level the level the reactor is in - * @param assembled whether the multiblock is currently assembled - * @return the calculated heat, also written to the configured pattern's tag - */ - int updateHeatOnly(ItemStack configuredPattern, ReactorDisplayState displayState, BigFluidStack fluidStack, - HeatBalance heatBalance, int previousHeat, ReactorControllerInventory inventory, Level level, boolean assembled); - - /** - * Calculates the reactor's heat during normal operation and writes it to - * the configured pattern's tag. - * - * @param configuredPattern the blueprint's configured pattern (required items) - * @param fluidStack the reactor's current coolant fluid stack, may be {@code null} - * @param heatBalance the pattern's fuel/cooler heat balance for this tick - * @param previousHeat the heat value calculated on the previous tick - * @param inventory the reactor controller's inventory, used to read the configured pattern items - * @param level the level the reactor is in - * @param displayState snapshot of items/fluids currently available to the reactor, may be {@code null} - * @return the calculated heat - */ - int calculateAndWriteHeat(ItemStack configuredPattern, BigFluidStack fluidStack, HeatBalance heatBalance, int previousHeat, - ReactorControllerInventory inventory, Level level, ReactorDisplayState displayState); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorMeltdownMonitor.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorMeltdownMonitor.java deleted file mode 100644 index a326391f3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/IReactorMeltdownMonitor.java +++ /dev/null @@ -1,31 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; - -/** - * Tracks the reactor's meltdown countdown and the player notifications tied to it. - * Consumes the danger flag computed by {@link IReactorAlarmCoordinator#computeDanger} - * instead of recomputing it, so the heat-level classification stays in a single place. - */ -public interface IReactorMeltdownMonitor { - - /** - * Outcome of a single countdown tick. - * {@code NONE} - not in danger, countdown reset to zero. - * {@code CRITICAL} - in danger, countdown running, explosion threshold not reached yet. - * {@code EXPLODE} - countdown threshold reached, the caller must trigger the explosion now. - */ - enum MeltdownState { NONE, CRITICAL, EXPLODE } - - /** - * Advances the countdown by one tick and sends the matching player notifications - * (stabilized / overheating / meltdown flash / critical failure). - * - * @param level the reactor's level, used for notifications and game time - * @param pos the controller's position, used as the notification origin - * @param isDanger whether the reactor is currently at heat level DANGER - * @return the resulting {@link MeltdownState} for this tick - */ - MeltdownState tick (Level level, BlockPos pos, boolean isDanger); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorAlarmCoordinator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorAlarmCoordinator.java deleted file mode 100644 index 4b365438b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorAlarmCoordinator.java +++ /dev/null @@ -1,44 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.content.multiblock.alarm.ReactorAlarm; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorAlarmManagerI; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; - -/** - * Default {@link IReactorAlarmCoordinator}. Extracted from - * {@code ReactorControllerBlockEntity.activateAlarms(boolean)}: the alarm wiring and - * advancement award are unchanged from the original implementation. - */ -public class ReactorAlarmCoordinator implements IReactorAlarmCoordinator { - private final CNAdvancementBehaviour advancement; - - public ReactorAlarmCoordinator(CNAdvancementBehaviour advancement) { - this.advancement = advancement; - } - - @Override - public boolean computeDanger(int heat, int multiblockSize) { - return IHeat.HeatLevel.of(heat, multiblockSize) == IHeat.HeatLevel.DANGER; - } - - @Override - public void update(Level level, ReactorAlarmManagerI alarmManager, boolean isDanger) { - if (alarmManager == null) return; - - for (BlockPos pos : alarmManager.getBlocksPosition(level)) { - if (!level.isLoaded(pos)) continue; - - BlockState state = level.getBlockState(pos); - - if (state.getBlock() instanceof ReactorAlarm && state.getValue(ReactorAlarm.POWERED) != isDanger) { - level.setBlock(pos, state.setValue(ReactorAlarm.POWERED, isDanger), 3); - if (isDanger) advancement.awardPlayer(CNAdvancement.SILENCE_THE_CORE); - } - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorHeatUpdateCoordinator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorHeatUpdateCoordinator.java deleted file mode 100644 index ed5072d65..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorHeatUpdateCoordinator.java +++ /dev/null @@ -1,131 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.consumable.PatternReader; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManagerI; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.HeatBalance; - -import java.util.Collections; -import java.util.Map; - -/** - * Default implementation of {@link IReactorHeatUpdateCoordinator}. - * Delegates raw heat calculation to {@link IHeatService} and only adds the - * pattern-availability logic (fuel-only vs. full pattern). - */ -public class ReactorHeatUpdateCoordinator implements IReactorHeatUpdateCoordinator { - private final IHeatService heatService; - - public ReactorHeatUpdateCoordinator(IHeatService heatService) { - this.heatService = heatService; - } - - @Override - public HeatBalance calculateHeatBalance(ItemStack configuredPattern, ReactorDisplayState displayState, Level level) { - Map patternCounts = PatternReader.readItemCounts(configuredPattern); - Map currentItems = displayState != null && displayState.items() != null - ? displayState.items() : Collections.emptyMap(); - - int heatPoints = 0; - int coolingPoints = 0; - - for (Map.Entry entry : patternCounts.entrySet()) { - Item item = entry.getKey(); - int requiredCount = entry.getValue(); - int availableCount = currentItems.getOrDefault(item, 0); - int countToUse = Math.min(requiredCount, availableCount); - if (countToUse <= 0) continue; - - RodType rodType = RodType.resolveRodType(item, level); - if (rodType == null || !rodType.isNotEmptyItem()) continue; - - int weighted = rodType.ratio().get() * countToUse; - if (rodType.type() == RodType.TypeRod.FUEL) heatPoints += weighted; - else if (rodType.type() == RodType.TypeRod.COOLER) coolingPoints += weighted; - } - - return new HeatBalance(heatPoints, coolingPoints); - } - - /** Predicate applied to each pattern entry when checking availability. */ - @FunctionalInterface - private interface PatternEntryCheck { - boolean test(Item item, int requiredCount, int availableCount); - } - - /** - * Iterates over the items required by the configured pattern and applies - * {@code check} to each entry, stopping as soon as one entry fails. - * - * @return {@code true} if {@code check} succeeded for every pattern entry - */ - private static boolean checkPatternAvailability(ItemStack configuredPattern, ReactorDisplayState displayState, - PatternEntryCheck check) { - Map patternCounts = PatternReader.readItemCounts(configuredPattern); - Map currentItems = displayState != null && displayState.items() != null - ? displayState.items() : Collections.emptyMap(); - - for (Map.Entry entry : patternCounts.entrySet()) { - Item item = entry.getKey(); - int requiredCount = entry.getValue(); - int availableCount = currentItems.getOrDefault(item, 0); - if (!check.test(item, requiredCount, availableCount)) { - return false; - } - } - return true; - } - - @Override - public boolean canRun(ItemStack configuredPattern, ReactorDisplayState displayState, - ReactorInputFluidManagerI inputFluidManager, Level level, boolean assembled) { - if (configuredPattern.isEmpty() || configuredPattern.getOrCreateTag().isEmpty() - || inputFluidManager.size() == 0 || !assembled) { - return false; - } - - boolean[] hasAnyFuel = {false}; - boolean allFuelAvailable = checkPatternAvailability(configuredPattern, displayState, - (item, requiredCount, availableCount) -> { - RodType rodType = RodType.resolveRodType(item, level); - if (rodType.isNotEmptyItem() && rodType.type() == RodType.TypeRod.FUEL) { - hasAnyFuel[0] = true; - return availableCount > 0; - } - return true; // non-fuel entries don't block this gate - } - ); - - return allFuelAvailable && hasAnyFuel[0]; - } - - @Override - public int updateHeatOnly(ItemStack configuredPattern, ReactorDisplayState displayState, BigFluidStack fluidStack, - HeatBalance heatBalance, int previousHeat, ReactorControllerInventory inventory, Level level, boolean assembled) { - int heat = 0; - boolean emptyPattern = configuredPattern.isEmpty() || configuredPattern.getOrCreateTag().isEmpty(); - if (!emptyPattern && assembled) { - boolean allAvailable = checkPatternAvailability(configuredPattern, displayState, - (item, requiredCount, availableCount) -> availableCount >= requiredCount); - if (allAvailable) { - heat = (int) heatService.calculateHeat(fluidStack, heatBalance, previousHeat, inventory, level, displayState); - } - } - configuredPattern.getOrCreateTag().putDouble("heat", heat); - return heat; - } - - @Override - public int calculateAndWriteHeat(ItemStack configuredPattern, BigFluidStack fluidStack, HeatBalance heatBalance, int previousHeat, - ReactorControllerInventory inventory, Level level, ReactorDisplayState displayState) { - int heat = (int) heatService.calculateHeat(fluidStack, heatBalance, previousHeat, inventory, level, displayState); - configuredPattern.getOrCreateTag().putDouble("heat", heat); - return heat; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownExecutor.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownExecutor.java deleted file mode 100644 index c957b42a4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownExecutor.java +++ /dev/null @@ -1,51 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.ChatFormatting; -import net.minecraft.core.BlockPos; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.Mth; -import net.minecraft.world.level.GameRules; -import net.nuclearteam.createnuclear.CNEntityType; -import net.nuclearteam.createnuclear.content.explosion.NuclearExplosionEntity; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.foundation.utility.NotifyUtil; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.BiomeIrradiationService; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNBiomes; - -public class ReactorMeltdownExecutor implements IExplosionService { - @Override - public void triggerExplosion(ServerLevel level, BlockPos controllerPos, int reactorSize, int countFuelRod, int notifyRadius, boolean notifyWarnAll) { - BlockPos explosionPos = controllerPos.above(5); - - NotifyUtil.sendTitle(level, controllerPos, - CreateNuclearLang.translate("notification.reactor.destroyed"), - CreateNuclearLang.translate("notification.reactor.meltdown_finished"), - ChatFormatting.DARK_RED, notifyRadius, notifyWarnAll, 10, 60, 20 - ); - - float size = computeExplosionSize(reactorSize, countFuelRod); - - NuclearExplosionEntity explosion = new NuclearExplosionEntity(CNEntityType.NUCLEAR_EXPLOSION.get(), level); - explosion.setPos(explosionPos.getX() + 0.5D, explosionPos.getY() + 10.0D, explosionPos.getZ() - 2.0D); - explosion.setSize(size); - explosion.setNoGriefing(!level.getGameRules().getBoolean(GameRules.RULE_MOBGRIEFING)); - level.addFreshEntity(explosion); - - level.destroyBlock(controllerPos, false); - - BiomeIrradiationService.circularArea(level, explosionPos, CNBiomes.Irradiated.PLAIN, (int) (size * 30)); - - } - - private static float computeExplosionSize(int reactorSize, int countFuelRod) { - // Scales with reactor footprint: 5x5 -> 1.0, 7x7 -> 1.4, 9x9 -> 1.8 - float structureFactor = reactorSize / 5f; - - // Square root gives diminishing returns: each extra uranium rod adds less - // to the radius than the previous one. - float fuelImpact = Mth.sqrt(countFuelRod) * .3f; - - // Final size: constant base + (fuel impact scaled by structure factor) - return Mth.clamp(1.5f + (fuelImpact * structureFactor), 1f, 10f); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownMonitor.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownMonitor.java deleted file mode 100644 index bc7557001..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/service/ReactorMeltdownMonitor.java +++ /dev/null @@ -1,67 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.service; - -import net.minecraft.ChatFormatting; -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; -import net.nuclearteam.createnuclear.foundation.utility.NotifyUtil; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -/** - * Default {@link IReactorMeltdownMonitor}. Extracted from - * {@code ReactorControllerBlockEntity.tick()}: the countdown logic and its notifications - * are unchanged from the original implementation, only moved into their own class. - */ -public class ReactorMeltdownMonitor implements IReactorMeltdownMonitor { - /** Ticks of continuous danger before the reactor explodes (15s at 20 TPS). */ - private static final int EXPLOSION_THRESHOLD_TICKS = 300; - /** Last seconds of the countdown during which the flashing "meltdown in" message is shown. */ - private static final int CRITICAL_WINDOW_SECONDS = 10; - - private int explosionCountDown = 0; - - @Override - public MeltdownState tick(Level level, BlockPos pos, boolean isDanger) { - int configRadius = CNConfigs.server().notify.warningDistance.get(); - boolean configWarnAll = CNConfigs.server().notify.warnAllPlayers.get(); - - if (!isDanger) { - boolean wasCountingDown = explosionCountDown > 0; - explosionCountDown = 0; - if (wasCountingDown) { - NotifyUtil.sendActionBar(level, pos, - CreateNuclearLang.translate("notification.reactor.stabilized"), - ChatFormatting.GREEN, configRadius, configWarnAll); - } - return MeltdownState.NONE; - } - - explosionCountDown++; - int secondsLeft = (EXPLOSION_THRESHOLD_TICKS - explosionCountDown) / 20; - - if (secondsLeft <= CRITICAL_WINDOW_SECONDS && secondsLeft > 0) { - boolean isWhite = (level.getGameTime() / 5) % 2 == 0; - ChatFormatting flashColor = isWhite ? ChatFormatting.WHITE : ChatFormatting.RED; - - NotifyUtil.sendActionBar(level, pos, - CreateNuclearLang.translate("notification.reactor.meltdown_in") - .add(CreateNuclearLang.number(secondsLeft)) - .add(CreateNuclearLang.translate("generic.unit.seconds")), - flashColor, configRadius, configWarnAll); - } else if (secondsLeft > CRITICAL_WINDOW_SECONDS && explosionCountDown % 20 == 0) { - NotifyUtil.sendActionBar(level, pos, - CreateNuclearLang.translate("notification.reactor.overheating"), - ChatFormatting.DARK_RED, configRadius, configWarnAll); - } - - if (explosionCountDown >= EXPLOSION_THRESHOLD_TICKS) { - NotifyUtil.sendTitle(level, pos, - CreateNuclearLang.translate("notification.reactor.critical_failure"), - CreateNuclearLang.translate("notification.reactor.imminent_explosion"), - ChatFormatting.DARK_RED, configRadius, configWarnAll, 0, 40, 10); - return MeltdownState.EXPLODE; - } - - return MeltdownState.CRITICAL; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshot.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshot.java deleted file mode 100644 index b9e557567..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshot.java +++ /dev/null @@ -1,32 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.snapshot; - -import net.minecraft.world.item.Item; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; - -import java.util.List; -import java.util.Map; - -/** - * Snapshot of the reactor's inputs, collected once per tick. - *

- * {@code items} reflects the items actually present (for tooltip display). - * {@code bigFuelItem}/{@code bigCoolerItem} are derived from - * {@link net.nuclearteam.createnuclear.content.multiblock.input.item.VirtualReactorInputsItem} and always represent, respectively, - * Uranium Rod / Graphite Rod (generic tag-based count, fixed identity) — - * do not use these fields to infer the actual item type loaded. - *

- * The elements of {@code fluids} ({@link BigFluidStack}) remain mutable - * (public fields); this snapshot only guarantees immutability of the - * list/map structure, not of their contents. - */ - -public record ReactorInputSnapshot(Map items, List fluids, long maxFluidCapacity) { - public static final ReactorInputSnapshot EMPTY = new ReactorInputSnapshot( - Map.of(), List.of(), 0 - ); - - public ReactorInputSnapshot { - items = Map.copyOf(items); - fluids = List.copyOf(fluids); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshotBuilder.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshotBuilder.java deleted file mode 100644 index b6a0bbb94..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/controller/snapshot/ReactorInputSnapshotBuilder.java +++ /dev/null @@ -1,49 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.controller.snapshot; - -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.items.IItemHandler; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManagerI; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputManagerI; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.VirtualReactorInputFluid; -import net.nuclearteam.createnuclear.content.multiblock.input.item.VirtualReactorInputsItem; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class ReactorInputSnapshotBuilder { - private ReactorInputSnapshotBuilder() {} - - public static ReactorInputSnapshot build(Level level, ReactorInputManagerI inputManager, ReactorInputFluidManagerI inputFluidManager) { - // Populate display fields for client sync - Map items = new HashMap<>(); - List itemHandlers = inputManager.getItemHandlers(level); - for (IItemHandler h : itemHandlers) { - for (int s = 0; s < h.getSlots(); s++) { - ItemStack st = h.getStackInSlot(s); - if (!st.isEmpty()) { - items.merge(st.getItem(), st.getCount(), Integer::sum); - } - } - } - - long maxFluidCapacity = 0; - for (IFluidHandler h : inputFluidManager.getFuildHandlers(level)) { - if (h.getTanks() > 0) { - maxFluidCapacity += h.getTankCapacity(0); - } - } - - VirtualReactorInputsItem virtualItems = inputManager.getInventory(level); - VirtualReactorInputFluid virtualFluid = inputFluidManager.getInventory(level); - List fluids = VirtualReactorInputFluid.toBigList(virtualFluid.fluids()); - - - - return new ReactorInputSnapshot(items, fluids, maxFluidCapacity); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/cooler/ReactorCooler.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/cooler/ReactorCooler.java deleted file mode 100644 index 3cdb4cca9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/cooler/ReactorCooler.java +++ /dev/null @@ -1,42 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.cooler; - -import com.simibubi.create.content.equipment.wrench.IWrenchable; -import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; - -import javax.annotation.Nullable; - -public class ReactorCooler extends Block implements IWrenchable { - public ReactorCooler(Properties properties) { - super(properties); - } - - protected ReactorPattern pattern = new ReactorPattern(); - - @Override // Called when the block is placed on the world - public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { - super.onPlace(state, level, pos, oldState, movedByPiston); - pattern.findController(pos, level, true); - } - - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); - } - - @Override - public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean movedByPiston) { - super.onRemove(state, level, pos, newState, movedByPiston); - pattern.findController(pos, level, false); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/core/ReactorCoreEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/core/ReactorCoreEntity.java index f362012fa..8b660c4bf 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/core/ReactorCoreEntity.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/core/ReactorCoreEntity.java @@ -1,15 +1,20 @@ package net.nuclearteam.createnuclear.content.multiblock.core; +import lib.multiblock.SimpleMultiBlockAislePatternBuilder; import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.content.multiblock.IHeat; import net.nuclearteam.createnuclear.content.multiblock.casing.ReactorCasingEntity; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; + +import static net.nuclearteam.createnuclear.content.multiblock.CNMultiblock.*; @SuppressWarnings({"unused"}) public class ReactorCoreEntity extends ReactorCasingEntity { - private int countdownTicks = 0; - private boolean hasExploded = false; public ReactorCoreEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); @@ -19,6 +24,69 @@ public ReactorCoreEntity(BlockEntityType type, BlockPos pos, BlockState state public void tick() { super.tick(); - if (level.isClientSide() || hasExploded) return; + if (level.isClientSide()) return; + + BlockPos controllerPos = getBlockPosForReactor(); + if (level.getBlockEntity(controllerPos) instanceof ReactorControllerBlockEntity reactorController) { + int heat = (int) reactorController.configuredPattern.getOrCreateTag().getDouble("heat"); + if (IHeat.HeatLevel.of(heat) == IHeat.HeatLevel.DANGER) { + if (countdownTicks >= 600) { // 300 ticks = 15 secondes + explodeReactorCore(level, getBlockPos()); + } else { + countdownTicks++; + } + } else { + countdownTicks = 0; // Reset the countdown if the heat level is not in danger + } + } + } + + private void explodeReactorCore(Level world, BlockPos pos) { + level.explode(null, pos.getX(), pos.getY(), pos.getZ(), 20F, Level.ExplosionInteraction.BLOCK); + } + + private static BlockPos FindController(char character) { + return SimpleMultiBlockAislePatternBuilder.start() + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAIAA, ADADA, BACAB, ADADA, AAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAOAA) + .where('A', a -> a.getState().is(CNBlocks.REACTOR_CASING.get())) + .where('B', a -> a.getState().is(CNBlocks.REACTOR_FRAME.get())) + .where('C', a -> a.getState().is(CNBlocks.REACTOR_CORE.get())) + .where('D', a -> a.getState().is(CNBlocks.REACTOR_COOLER.get())) + .where('*', a -> a.getState().is(CNBlocks.REACTOR_CONTROLLER.get())) + .where('O', a -> a.getState().is(CNBlocks.REACTOR_OUTPUT.get())) + .where('I', a -> a.getState().is(CNBlocks.REACTOR_INPUT.get())) + .getDistanceController(character); + } + + private BlockPos getBlockPosForReactor() { + BlockPos posController = getBlockPos(); + BlockPos posInput = new BlockPos(posController.getX(), posController.getY(), posController.getZ()); + + int[][][] directions = { + {{0, 2, 2}, {0, 1, 2}, {0, 0, 2}, {0, -1, 2}, {0, -2, 2}}, // NORTH + {{0, 2, -2}, {0, 1, -2}, {0, 0, -2}, {0, -1, -2}, {0, -2, -2}}, // SOUTH + + {{2, 2, 0}, {2, 1, 0}, {2, 0, 0}, {2, -1, 0}, {2, -2, 0}}, // EAST + {{-2, 2, 0}, {-2, 1, 0}, {-2, 0, 0}, {-2, -1, 0}, {-2, -2, 0}} // WEST + }; + + + for (int[][] direction : directions) { + for (int[] dir : direction) { + BlockPos newPos = posController.offset(dir[0], dir[1], dir[2]); + if (level.getBlockState(newPos).is(CNBlocks.REACTOR_CONTROLLER.get())) { + posInput = newPos; + break; + } + } + } + + return posInput; } -} \ No newline at end of file +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/fluid/CNReactorFluidTypes.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/fluid/CNReactorFluidTypes.java deleted file mode 100644 index 1f9e6a659..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/fluid/CNReactorFluidTypes.java +++ /dev/null @@ -1,54 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.fluid; - -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.level.material.Fluids; -import net.nuclearteam.createnuclear.CNFluids; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; - -import static net.nuclearteam.createnuclear.api.ReactorFluidTypesValue.DEFAULT_REACTOR_FLUID_TYPE; - -public class CNReactorFluidTypes { - /** - * Static registry of reactor fluid types ({@link ReactorFluidType}) for the CreateNuclear mod. - * - *

This class exposes the {@link ResourceKey}s and the {@code bootstrap} - * method invoked by the datapack system to register reactor fluid types used - * by the multiblock (for example, specific fluids with heat/efficiency - * characteristics). The example below shows how to create a - * {@code ReactorFluidType} via its {@code ReactorFluidType.Builder}.

- * - *

Example — Custom Reactor Fluid:

- *
{@code
-     * register(ctx, "name", new ReactorFluidType.Builder()
-     *             .maxHeat(int)
-     *             .efficiency(int)
-     *             .fluid(Fluid)
-     *             .build());
-     * }
- * - * @see net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType - * @see net.nuclearteam.createnuclear.api.CreateNuclearRegistries - */ - public static void bootstrap(BootstapContext ctx) { - register(ctx, "fallback", DEFAULT_REACTOR_FLUID_TYPE); - register(ctx, "water", new ReactorFluidType.Builder() - .fluid(Fluids.WATER) - .maxHeat(2048) - .efficiency(1000) - .build() - ); - register(ctx, "nitrogen", new ReactorFluidType.Builder() - .fluid(CNFluids.LIQUID_NITROGEN.getSource()) - .maxHeat(8196) - .efficiency(100) - .build() - ); - } - - private static void register(BootstapContext ctx, String name, ReactorFluidType type) { - ctx.register(ResourceKey.create(CreateNuclearRegistries.FLUID_TYPE, CreateNuclear.asResource(name)), type); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrame.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrame.java index 711f6846a..d9c1ad3fa 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrame.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrame.java @@ -1,11 +1,10 @@ package net.nuclearteam.createnuclear.content.multiblock.frame; import com.simibubi.create.content.equipment.wrench.IWrenchable; -import com.simibubi.create.foundation.block.IBE; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.Vec3i; import net.minecraft.util.StringRepresentable; -import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.BlockPlaceContext; @@ -15,22 +14,21 @@ import net.minecraft.world.level.block.Mirror; import net.minecraft.world.level.block.Rotation; import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.EnumProperty; import net.minecraft.world.level.block.state.properties.Property; -import net.nuclearteam.createnuclear.CNBlockEntityTypes; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class ReactorFrame extends Block implements IWrenchable, IBE { +import java.util.List; + +public class ReactorFrame extends Block implements IWrenchable { public static final Property PART = EnumProperty.create("part", Part.class); - protected ReactorPattern pattern = new ReactorPattern(); + public ReactorFrame(Properties properties) { super(properties); } @@ -110,33 +108,32 @@ public BlockState mirror(BlockState state, Mirror mirror) { @Override public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { super.onPlace(state, level, pos, oldState, movedByPiston); - pattern.findController(pos, level, true); + List players = level.players(); + FindController(pos, level, players, true); } - - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @javax.annotation.Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); + @Override // called when the player destroys the block, with or without a tool + public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { + super.playerDestroy(level, player, pos, state, blockEntity, tool); + List players = level.players(); + FindController(pos, level, players, false); } - @Override - public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean movedByPiston) { - super.onRemove(state, level, pos, newState, movedByPiston); - // playerDestroy is NOT called in creative mode, so the structure must also be - // re-evaluated here. Only react to an actual block removal/replacement (different - // block type), not to a simple PART property change (same block, via setBlock). - if (!state.is(newState.getBlock())) { - pattern.findController(pos, level, false); + public ReactorControllerBlock FindController(BlockPos blockPos, Level level, List players, boolean first){ // Function that checks the surrounding blocks in order + BlockPos newBlock; // to find the controller and verify the pattern + Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + for (int y = pos.getY()-3; y != pos.getY()+4; y+=1) { + for (int x = pos.getX()-5; x != pos.getX()+5; x+=1) { + for (int z = pos.getZ()-5; z != pos.getZ()+5; z+=1) { + newBlock = new BlockPos(x, y, z); + if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get())) { // verifying the pattern + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(newBlock).getBlock(); + controller.Verify(level.getBlockState(newBlock), newBlock, level, players, first); + return controller; + } + } + } } + return null; } - @Override - public Class getBlockEntityClass() { - return ReactorFrameEntity.class; - } - - @Override - public BlockEntityType getBlockEntityType() { - return CNBlockEntityTypes.REACTOR_FRAME.get(); - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameEntity.java deleted file mode 100644 index fc4b7d92c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameEntity.java +++ /dev/null @@ -1,79 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.frame; - -import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; -import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import org.jetbrains.annotations.Nullable; - -import java.util.List; - -/** - * Block entity for {@link ReactorFrame}. It only stores a reference to the - * reactor controller that owns this frame so the client-side renderer - * ({@link ReactorFrameRenderer}) can fetch the reactor's current fluid and - * draw it dynamically inside the frame window. - * - *

The controller position is assigned by - * {@link net.nuclearteam.createnuclear.content.multiblock.ReactorAssembler} - * during assembly and persisted/synced through {@link SmartBlockEntity}.

- */ -public class ReactorFrameEntity extends SmartBlockEntity { - - @Nullable - private BlockPos controller; - - public ReactorFrameEntity(BlockEntityType type, BlockPos pos, BlockState state) { - - super(type, pos, state); - setController(pos); - } - - @Override - public void addBehaviours(List behaviours) { } - - /** Assigns the owning reactor controller and syncs the change to clients. */ - public void setController(@Nullable BlockPos controllerPos) { - if (java.util.Objects.equals(this.controller, controllerPos)) return; - this.controller = controllerPos; - notifyUpdate(); - } - - @Nullable - public BlockPos getController() { - return controller; - } - - /** - * Resolves the controller block entity, returning {@code null} when no - * controller is assigned or the referenced block is no longer a controller. - */ - @Nullable - public ReactorControllerBlockEntity getControllerEntity() { - if (controller == null || level == null) return null; - if (level.getBlockEntity(controller) instanceof ReactorControllerBlockEntity controllerEntity) - return controllerEntity; - return null; - } - - @Override - protected void read(CompoundTag tag, boolean clientPacket) { - super.read(tag, clientPacket); - if (tag.contains("Controller")) { - this.controller = BlockPos.of(tag.getLong("Controller")); - } else { - this.controller = null; - } - } - - @Override - protected void write(CompoundTag tag, boolean clientPacket) { - super.write(tag, clientPacket); - if (controller != null) { - tag.putLong("Controller", controller.asLong()); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameRenderer.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameRenderer.java deleted file mode 100644 index 3353281f9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorFrameRenderer.java +++ /dev/null @@ -1,74 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.frame; - -import com.mojang.blaze3d.vertex.PoseStack; -import com.simibubi.create.foundation.blockEntity.renderer.SafeBlockEntityRenderer; -import net.createmod.catnip.platform.ForgeCatnipServices; -import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; -import net.minecraftforge.fluids.FluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorFrameDisplayManagerI; - -/** - * Renders the reactor fluid dynamically inside the {@link ReactorFrame} window. - * The fluid (texture + tint) is resolved from the owning reactor controller, so - * the visible liquid reflects whichever fluid the reactor actually uses - * (water, liquid nitrogen, ...) instead of a texture baked into the model. - */ -public class ReactorFrameRenderer extends SafeBlockEntityRenderer { - - // Horizontal interior of the window (1..15 px on a 16 px block). - private static final float X_MIN = 1f / 16f; - private static final float X_MAX = 15f / 16f; - private static final float Z_MIN = 1f / 16f; - private static final float Z_MAX = 15f / 16f; - - public ReactorFrameRenderer(BlockEntityRendererProvider.Context context) { } - - @Override - protected void renderSafe(ReactorFrameEntity be, float partialTicks, PoseStack ms, MultiBufferSource buffer, - int light, int overlay) { - ReactorControllerBlockEntity controller = be.getControllerEntity(); - if (controller == null) return; - - ReactorFrameDisplayManagerI frameDisplay = controller.getFrameDisplayManager(); - - FluidStack fluid = frameDisplay.getDisplayedFluid(controller.getLevel(), controller.getInputFluidManager()); - if (fluid == null || fluid.isEmpty()) return; - - // Local vertical bounds of the liquid volume inside this block, matching - // what used to be baked into each frame part model - // (frame_top / frame_middle / frame_bottom / frame_none). - float boxYMin; - float boxYMax; - switch (be.getBlockState().getValue(ReactorFrame.PART)) { - case START -> { boxYMin = 0f; boxYMax = 9f / 16f; } - case MIDDLE -> { boxYMin = 0f; boxYMax = 1f; } - case END -> { boxYMin = 4f / 16f; boxYMax = 1f; } - default -> { boxYMin = 2.9f / 16f; boxYMax = 9.9f / 16f; } - } - - // Clamp the liquid to the reactor's global fill level so the whole wall - // shares one continuous surface that rises from the bottom as the input - // fills. The level is mapped over the range that liquid actually occupies: - // from the bottom frame's lip (frameMinY + 4/16) to the top frame's cap - // (frameMaxY + 9/16), so even a nearly-empty reactor still shows a sliver. - float yMax = boxYMax; - if (frameDisplay.hasFrameColumn()) { - float ratio = frameDisplay.getDisplayedFluidFillRatio(controller.getLevel(), controller.getInputFluidManager()); - double liquidBottomWorldY = frameDisplay.getFrameColumnMinY() + 4.0 / 16.0; - double liquidTopWorldY = frameDisplay.getFrameColumnMaxY() + 9.0 / 16.0; - double surfaceWorldY = liquidBottomWorldY + ratio * (liquidTopWorldY - liquidBottomWorldY); - double localSurface = surfaceWorldY - be.getBlockPos().getY(); - if (localSurface <= boxYMin) return; // liquid level is below this block - yMax = (float) Math.min(boxYMax, localSurface); - } - - // Last arg (invertGasses) must be false: liquid nitrogen has density 0, so - // it counts as "lighter than air" and would otherwise be flipped 180°, - // hiding the top surface. We always fill bottom-to-top here. - ForgeCatnipServices.FLUID_RENDERER.renderFluidBox(fluid, - X_MIN, boxYMin, Z_MIN, X_MAX, yMax, Z_MAX, - buffer, ms, light, false, false); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorGaugeOverrides.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorGaugeOverrides.java new file mode 100644 index 000000000..de268b3ac --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/frame/ReactorGaugeOverrides.java @@ -0,0 +1,21 @@ +package net.nuclearteam.createnuclear.content.multiblock.frame; + +import com.tterrag.registrate.providers.DataGenContext; +import com.tterrag.registrate.providers.RegistrateItemModelProvider; +import net.minecraft.world.item.Item; +import net.minecraftforge.client.model.generators.ItemModelBuilder; + +public class ReactorGaugeOverrides { + public static ItemModelBuilder addOverrideModels(DataGenContext c, RegistrateItemModelProvider p) { + ItemModelBuilder builder = p.generated(c); + /*CreateNuclear.LOGGER.warn(" " + builder.override() + .model(p.getBuilder("block/reactor_main_frame/reactor_gauge_none") + .parent(p.getExistingFile(p.modLoc("block/reactor_main_frame/reactor_gauge_none")))) + .end().toJson());*/ + return builder.override() + .model(p.getBuilder("block/reactor_main_frame/reactor_gauge_none") + .parent(p.getExistingFile(p.modLoc("block/reactor_main_frame/reactor_gauge_none")))) + .end(); + //.predicate(CreateNuclear.asResource("reactor_main_frame"), 0) + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInput.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInput.java new file mode 100644 index 000000000..a85dfeedf --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInput.java @@ -0,0 +1,146 @@ +package net.nuclearteam.createnuclear.content.multiblock.input; + +import com.simibubi.create.content.equipment.wrench.IWrenchable; +import com.simibubi.create.foundation.block.IBE; +import com.simibubi.create.foundation.item.ItemHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.DirectionProperty; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraftforge.common.property.Properties; +import net.minecraftforge.network.NetworkHooks; +import net.nuclearteam.createnuclear.CNBlockEntityTypes; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.CNShapes; +import net.nuclearteam.createnuclear.CreateNuclear; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; +import net.nuclearteam.createnuclear.foundation.block.HorizontalDirectionalReactorBlock; +import org.jetbrains.annotations.NotNull; + +import javax.annotation.Nullable; +import java.util.List; + +public class ReactorInput extends HorizontalDirectionalReactorBlock implements IWrenchable, IBE { + + public ReactorInput(Properties properties) { + super(properties); + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(FACING); + super.createBlockStateDefinition(builder); + } + + @Override + public InteractionResult use(BlockState state, Level worldIn, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) { + ItemStack itemInHand = player.getItemInHand(handIn); + + if (itemInHand.getItem() instanceof BlockItem) { + return InteractionResult.PASS; + } + + + if (worldIn.isClientSide()) {return InteractionResult.SUCCESS;} + + withBlockEntityDo(worldIn, pos, be -> NetworkHooks.openScreen((ServerPlayer) player, be, be::sendToMenu)); + return InteractionResult.PASS; + } + + @Override + public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean isMoving) { + super.onPlace(state, level, pos, oldState, isMoving); + List players = level.players(); + FindController(pos, level, players, true); + } + + // @Override // ! may be useless + // public void setPlacedBy(Level worldIn, BlockPos pos, BlockState state, LivingEntity placer, ItemStack stack) { + // super.setPlacedBy(worldIn, pos, state, placer, stack); + // if (worldIn.isClientSide) + // return; + // if (stack == null) + // return; + // withBlockEntityDo(worldIn, pos, be -> { + // CompoundTag orCreateTag = stack.getOrCreateTag(); + // be.readInventory(orCreateTag.getCompound("Inventory")); + // }); + // } + + @Override + public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { + super.playerDestroy(level, player, pos, state, blockEntity, tool); + List players = level.players(); + FindController(pos, level, players, false); + } + + @Override + public void onRemove(BlockState pState, Level pLevel, BlockPos pPos, BlockState pNewState, boolean pIsMoving) { + super.onRemove(pState, pLevel, pPos, pNewState, pIsMoving); + + withBlockEntityDo(pLevel, pPos, be -> ItemHelper.dropContents(pLevel, pPos, be.inventory)); + pLevel.removeBlockEntity(pPos); + + List players = pLevel.players(); + FindController(pPos, pLevel, players, false); + } + + public ReactorControllerBlock FindController(BlockPos blockPos, Level level, List players, boolean first){ // Function that checks the surrounding blocks in order + BlockPos newBlock; // to find the controller and verify the pattern + Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + for (int x = pos.getX()-5; x != pos.getX()+5; x+=1) { + for (int z = pos.getZ()-5; z != pos.getZ()+5; z+=1) { + newBlock = new BlockPos(x, pos.getY(), z); + if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get())) { // verifying the pattern + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(newBlock).getBlock(); + controller.Verify(level.getBlockState(newBlock), newBlock, level, players, first); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, newBlock); + if (entity.created) { + return controller; + } + } + } + } + return null; + } + + @Override + public BlockState getStateForPlacement(BlockPlaceContext context) { + return this.defaultBlockState() + .setValue(FACING, context.getHorizontalDirection().getOpposite()); + } + @Override + public @NotNull VoxelShape getShape(BlockState state, BlockGetter worldIn, BlockPos pos, CollisionContext context) { + return CNShapes.REACTOR_INPUT.get(state.getValue(FACING)); + } + + @Override + public Class getBlockEntityClass() { + return ReactorInputEntity.class; + } + + @Override + public BlockEntityType getBlockEntityType() { + return CNBlockEntityTypes.REACTOR_INPUT.get(); + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputEntity.java similarity index 54% rename from src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputEntity.java rename to src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputEntity.java index 6fb2089c3..ff5f4f6d5 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputEntity.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputEntity.java @@ -1,7 +1,8 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; +package net.nuclearteam.createnuclear.content.multiblock.input; import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import lib.multiblock.SimpleMultiBlockAislePatternBuilder; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; @@ -17,23 +18,24 @@ import net.minecraftforge.common.capabilities.ForgeCapabilities; import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.items.IItemHandler; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; -import net.nuclearteam.createnuclear.foundation.block.MultiDirectionalReactorBlock; +import net.nuclearteam.createnuclear.CNBlocks; import javax.annotation.Nullable; import java.util.List; -public class ReactorRodInputEntity extends SmartBlockEntity implements MenuProvider { +import static net.nuclearteam.createnuclear.content.multiblock.CNMultiblock.*; + +public class ReactorInputEntity extends SmartBlockEntity implements MenuProvider { + protected BlockPos block; //protected ReactorControllerBlockEntity controller; - public ReactorControllerBlock controller = null; - public ReactorRodInputInventory inventory; + public ReactorInputInventory inventory; LazyOptional inventoryProvider; - public ReactorRodInputEntity(BlockEntityType type, BlockPos pos, BlockState state) { + public ReactorInputEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); - inventory = new ReactorRodInputInventory(this); + inventory = new ReactorInputInventory(this); inventoryProvider = LazyOptional.of(() -> inventory); } @@ -42,31 +44,52 @@ public ReactorRodInputEntity(BlockEntityType type, BlockPos pos, BlockState s public void addBehaviours(List behaviours) { } @Override - protected void write(CompoundTag tag, boolean clientPacket) { - super.write(tag, clientPacket); // Always call super first - + protected void read(CompoundTag tag, boolean clientPacket) { if (!clientPacket) { - tag.put("Inventory", inventory.serializeNBT()); + inventory.deserializeNBT(tag.getCompound("Inventory")); } + super.read(tag, clientPacket); } @Override - protected void read(CompoundTag tag, boolean clientPacket) { - super.read(tag, clientPacket); - + protected void write(CompoundTag tag, boolean clientPacket) { if (!clientPacket) { - if (tag.contains("Inventory")) { - inventory.deserializeNBT(tag.getCompound("Inventory")); - } + tag.put("Inventory", inventory.serializeNBT()); } + super.write(tag, clientPacket); } + public void readInventory(CompoundTag compound) { + inventory.deserializeNBT(compound); + } + + @Nullable @Override public Level getLevel() { return super.getLevel(); } + + private static BlockPos FindController(char character) { + return SimpleMultiBlockAislePatternBuilder.start() + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAIAA, ADADA, BACAB, ADADA, AAAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AABAA, ADADA, BACAB, ADADA, AABAA) + .aisle(AAAAA, AAAAA, AAAAA, AAAAA, AAOAA) + .where('A', a -> a.getState().is(CNBlocks.REACTOR_CASING.get())) + .where('B', a -> a.getState().is(CNBlocks.REACTOR_FRAME.get())) + .where('C', a -> a.getState().is(CNBlocks.REACTOR_CORE.get())) + .where('D', a -> a.getState().is(CNBlocks.REACTOR_COOLER.get())) + .where('*', a -> a.getState().is(CNBlocks.REACTOR_CONTROLLER.get())) + .where('O', a -> a.getState().is(CNBlocks.REACTOR_OUTPUT.get())) + .where('I', a -> a.getState().is(CNBlocks.REACTOR_INPUT.get())) + .getDistanceController(character); + } + @Override public Component getDisplayName() { return Component.translatable("gui.createnuclear.reactor_input.title"); @@ -75,7 +98,7 @@ public Component getDisplayName() { @Nullable @Override public AbstractContainerMenu createMenu(int i, Inventory inventory, Player player) { - return ReactorRodInputMenu.create(i, inventory, this); + return ReactorInputMenu.create(i, inventory, this); } @Override @@ -89,16 +112,8 @@ protected boolean isItemHandlerCap(Capability cap) { @Override public LazyOptional getCapability(Capability cap, Direction side) { - if (isItemHandlerCap(cap)){ - if (side != null && side != getBlockState().getValue(MultiDirectionalReactorBlock.FACING)) - return LazyOptional.empty(); + if (isItemHandlerCap(cap)) return inventoryProvider.cast(); - } - return super.getCapability(cap, side); } - - public void setController(ReactorControllerBlock controller) { - this.controller = controller; - } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputGenerator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputGenerator.java new file mode 100644 index 000000000..36f2811c8 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputGenerator.java @@ -0,0 +1,25 @@ +package net.nuclearteam.createnuclear.content.multiblock.input; + +import com.simibubi.create.foundation.data.SpecialBlockStateGen; +import com.tterrag.registrate.providers.DataGenContext; +import com.tterrag.registrate.providers.RegistrateBlockstateProvider; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraftforge.client.model.generators.ModelFile; + +public class ReactorInputGenerator extends SpecialBlockStateGen { + @Override + protected int getXRotation(BlockState state) { + return 0; + } + + @Override + protected int getYRotation(BlockState state) { + return horizontalAngle(state.getValue(ReactorInput.FACING)); + } + + @Override + public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, BlockState state) { + return prov.models().getExistingFile(prov.modLoc("block/reactor/input/block")); + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputInventory.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputInventory.java new file mode 100644 index 000000000..338e65ed0 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputInventory.java @@ -0,0 +1,32 @@ +package net.nuclearteam.createnuclear.content.multiblock.input; + + +import net.minecraft.world.item.ItemStack; +import net.minecraftforge.items.ItemStackHandler; +import net.nuclearteam.createnuclear.CNItems; +import net.nuclearteam.createnuclear.CNTags; +import org.jetbrains.annotations.NotNull; + +public class ReactorInputInventory extends ItemStackHandler { + private final ReactorInputEntity be; + + public ReactorInputInventory(ReactorInputEntity be) { + super(2); + this.be = be; + } + + @Override + protected void onContentsChanged(int slot) { + super.onContentsChanged(slot); + be.setChanged(); + } + + @Override + public boolean isItemValid(int slot, @NotNull ItemStack stack) { + return switch (slot) { + case 0 -> CNTags.CNItemTags.FUEL.matches(stack); + case 1 -> CNTags.CNItemTags.COOLER.matches(stack); + default -> !super.isItemValid(slot, stack); + }; + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputMenu.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputMenu.java new file mode 100644 index 000000000..4d900d76e --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputMenu.java @@ -0,0 +1,99 @@ +package net.nuclearteam.createnuclear.content.multiblock.input; + +import com.simibubi.create.foundation.gui.menu.MenuBase; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.ClickType; +import net.minecraft.world.inventory.MenuType; +import net.minecraft.world.inventory.Slot; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.items.SlotItemHandler; +import net.nuclearteam.createnuclear.CNMenus; + +public class ReactorInputMenu extends MenuBase { + + + public ReactorInputMenu(MenuType type, int id, Inventory inv, FriendlyByteBuf extraData) { + super(type, id, inv, extraData); + } + + public ReactorInputMenu(MenuType type, int id, Inventory inv, ReactorInputEntity contentHolder) { + super(type, id, inv, contentHolder); + } + + public static ReactorInputMenu create(int id, Inventory inv, ReactorInputEntity contentHolder) { + return new ReactorInputMenu(CNMenus.SLOT_ITEM_STORAGE.get(), id, inv, contentHolder); + } + + @Override + public ItemStack quickMoveStack(Player player, int index) { + Slot clickedSlot = getSlot(index); + if (!clickedSlot.hasItem()) return ItemStack.EMPTY; + ItemStack stack = clickedSlot.getItem(); + if (index < 2) moveItemStackTo(stack, 2, slots.size(), false); + else moveItemStackTo(stack, 0, 2, false); + return ItemStack.EMPTY; + } + + @Override + protected ReactorInputEntity createOnClient(FriendlyByteBuf extraData) { + ClientLevel world = Minecraft.getInstance().level; + BlockEntity entity = world.getBlockEntity(extraData.readBlockPos()); + if (entity instanceof ReactorInputEntity reactorInputEntity) { + reactorInputEntity.readClient(extraData.readNbt()); + return reactorInputEntity; + } + return null; + } + + @Override + protected void initAndReadInventory(ReactorInputEntity contentHolder) { + + } + + @Override + protected void addSlots() { + + // player Slots + for (int hotbarSlot = 0; hotbarSlot < 9; ++hotbarSlot) { + this.addSlot(new Slot(player.getInventory(), hotbarSlot, -31 + hotbarSlot * 18, 155)); + } + + for (int row = 0; row < 3; ++row) { + for (int col = 0; col < 9; ++col) { + this.addSlot(new Slot(player.getInventory(), col + row * 9 + 9, -31 + col * 18, 97 + row * 18)); + } + } + + Slot slot1 = new SlotItemHandler(contentHolder.inventory, 0, 24, 29); + Slot slot2 = new SlotItemHandler(contentHolder.inventory, 1, 57, 29); + + addSlot(slot1); + addSlot(slot2); + + + } + + @Override + protected void saveData(ReactorInputEntity contentHolder) { + } + + @Override + public void clicked(int slotId, int button, ClickType clickType, Player player) { + if (clickType == ClickType.THROW) { + int[] targetSlotIds = {9, 18, 27, 0, 1, 28, 19, 10, 16, 17, 26, 25, 34, 35, 8, 7}; + for (int id : targetSlotIds) { + if (slotId == id) { + clickType = ClickType.PICKUP; + super.clicked(slotId, button, clickType, player); + } + } + return; + } + super.clicked(slotId, button, clickType, player); + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputScreen.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputScreen.java similarity index 81% rename from src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputScreen.java rename to src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputScreen.java index 5b6621d13..9bd900fcc 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputScreen.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/ReactorInputScreen.java @@ -1,4 +1,4 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; +package net.nuclearteam.createnuclear.content.multiblock.input; import com.simibubi.create.foundation.gui.AllGuiTextures; import com.simibubi.create.foundation.gui.menu.AbstractSimiContainerScreen; @@ -9,11 +9,11 @@ import static com.simibubi.create.foundation.gui.AllGuiTextures.PLAYER_INVENTORY; -public class ReactorRodInputScreen extends AbstractSimiContainerScreen { +public class ReactorInputScreen extends AbstractSimiContainerScreen { protected static final CNGuiTextures background = CNGuiTextures.REACTOR_SLOT_INVENTOR; - public ReactorRodInputScreen(ReactorRodInputMenu container, Inventory inv, Component title) { + public ReactorInputScreen(ReactorInputMenu container, Inventory inv, Component title) { super(container, inv, title); } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PersistentFluidLocks.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PersistentFluidLocks.java deleted file mode 100644 index c9837100f..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PersistentFluidLocks.java +++ /dev/null @@ -1,92 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.world.level.material.Fluid; -import net.minecraft.world.level.saveddata.SavedData; -import net.minecraftforge.registries.ForgeRegistries; - -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -public class PersistentFluidLocks extends SavedData { - private final Map locks = new ConcurrentHashMap<>(); - private static final String DATA_NAME = "createnuclear_fluid_locks"; - - /** - * Persistent storage for fluid locks associated with multiblock controllers. - * Locks are persisted to world saved data so controllers keep their preferred - * fluid across server restarts. - */ - - public static PersistentFluidLocks get(ServerLevel level) { - return level.getDataStorage().computeIfAbsent(nbt -> { - PersistentFluidLocks d = new PersistentFluidLocks(); - d.readFrom(nbt); - - return d; - }, PersistentFluidLocks::new, DATA_NAME); - } - - /** - * Attempt to acquire a persistent lock for the specified controller position. - * @param pos controller block position - * @param fluid fluid to lock to; if null the call is a no-op and returns true - * @return true if the lock was acquired or already held for the same fluid - */ - public boolean tryLock(BlockPos pos, Fluid fluid) { - if (fluid == null) return true; - boolean ok = locks.compute(pos, (k,v) -> v == null ? fluid : v) == fluid; - if (ok) setDirty(); - return ok; - } - - /** - * Check whether the given fluid is acceptable for the controller at {@code pos}. - * @param pos controller position - * @param fluid fluid to check - * @return true if no lock is present or the lock matches the provided fluid - */ - public boolean canAccept(BlockPos pos, Fluid fluid) { - if (fluid == null) return true; - Fluid locked = locks.get(pos); - return locked == null || locked == fluid; - } - - /** - * Clear any persistent lock for the specified controller position. - * Marks the saved data as dirty when a lock was removed. - */ - public void clearLock(BlockPos pos) { - if (locks.remove(pos) != null) setDirty(); - } - - public void readFrom(CompoundTag nbt) { - locks.clear(); - ListTag list = nbt.getList("locks", 10); - list.forEach(tag -> { - CompoundTag e = (CompoundTag) tag; - BlockPos pos = new BlockPos(e.getInt("x"), e.getInt("y"), e.getInt("z")); - Fluid f = ForgeRegistries.FLUIDS.getValue(ResourceLocation.tryParse(e.getString("fluid"))); - if (f != null) locks.put(pos, f); - }); - } - - @Override - public CompoundTag save(CompoundTag nbt) { - ListTag list = new ListTag(); - locks.forEach((pos, fluid) -> { - CompoundTag e = new CompoundTag(); - e.putInt("x", pos.getX()); - e.putInt("y", pos.getY()); - e.putInt("z", pos.getZ()); - e.putString("fluid", ForgeRegistries.FLUIDS.getKey(fluid).toString()); - list.add(e); - }); - nbt.put("locks", list); - return nbt; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PlayerInteractReactorFluidInput.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PlayerInteractReactorFluidInput.java deleted file mode 100644 index bcc02e744..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/PlayerInteractReactorFluidInput.java +++ /dev/null @@ -1,102 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import com.simibubi.create.content.fluids.tank.FluidTankBlockEntity; -import com.simibubi.create.content.fluids.transfer.GenericItemEmptying; -import com.simibubi.create.content.fluids.transfer.GenericItemFilling; -import com.simibubi.create.foundation.fluid.FluidHelper; -import com.simibubi.create.foundation.fluid.FluidHelper.FluidExchange; -import net.minecraft.core.BlockPos; -import net.minecraft.core.particles.BlockParticleOption; -import net.minecraft.core.particles.ParticleTypes; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.sounds.SoundSource; -import net.minecraft.util.Mth; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.material.Fluid; -import net.minecraft.world.phys.BlockHitResult; -import net.minecraft.world.phys.Vec3; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; - -public class PlayerInteractReactorFluidInput { - public static InteractionResult interact(Level level, BlockPos pos, Player player, InteractionHand hand, ItemStack stack, boolean onClient, BlockHitResult ray) { - FluidExchange exchange = null; - ReactorFluidInputEntity be = (ReactorFluidInputEntity) level.getBlockEntity(pos); - if (be == null) { - return InteractionResult.FAIL; - } - - LazyOptional tank = be.getCapability(ForgeCapabilities.FLUID_HANDLER); - if (!tank.isPresent()) return InteractionResult.PASS; - - IFluidHandler fluidInput = tank.orElse(null); - FluidStack prevFluidInInput = fluidInput.getFluidInTank(0).copy(); - - if (FluidHelper.tryEmptyItemIntoBE(level, player, hand, stack, be)) exchange = FluidExchange.ITEM_TO_TANK; - if (FluidHelper.tryFillItemFromBE(level, player, hand, stack, be)) exchange = FluidExchange.TANK_TO_ITEM; - - if (exchange == null) { - if (GenericItemEmptying.canItemBeEmptied(level, stack) || GenericItemFilling.canItemBeFilled(level, stack)) return InteractionResult.SUCCESS; - return InteractionResult.PASS; - } - - SoundEvent soundEvent = null; - BlockState fluidState = null; - FluidStack fluidInInput = tank.map(fh -> fh.getFluidInTank(0)) - .orElse(FluidStack.EMPTY); - - if (exchange == FluidExchange.ITEM_TO_TANK) { - Fluid fluid = fluidInInput.getFluid(); - fluidState = fluid.defaultFluidState().createLegacyBlock(); - soundEvent = FluidHelper.getEmptySound(fluidInInput); - } - - if (exchange == FluidExchange.TANK_TO_ITEM) { - Fluid fluid = prevFluidInInput.getFluid(); - fluidState = fluid.defaultFluidState().createLegacyBlock(); - soundEvent = FluidHelper.getFillSound(prevFluidInInput); - } - - if (soundEvent != null && !onClient) { - float pitch = Mth - .clamp(1 - (1f * fluidInInput.getAmount() / (FluidTankBlockEntity.getCapacityMultiplier() * 16)), 0, 1); - pitch /= 1.5f; - pitch += .5f; - pitch += (level.random.nextFloat() - .5f) / 4f; - level.playSound(null, pos, soundEvent, SoundSource.BLOCKS, .5f, pitch); - } - - if (!fluidInInput.isFluidStackIdentical(prevFluidInInput)) { - if (fluidState != null && onClient) { - BlockParticleOption blockParticleData = - new BlockParticleOption(ParticleTypes.BLOCK, fluidState); - float flevel = (float) fluidInInput.getAmount() / fluidInput.getTankCapacity(0); - - boolean reversed = fluidInInput.getFluid() - .getFluidType() - .isLighterThanAir(); - if (reversed) - flevel = 1 - flevel; - - Vec3 vec = ray.getLocation(); - vec = new Vec3(vec.x, be.getBlockPos() - .getY() + flevel * (1 - .5f) + .25f, vec.z); - Vec3 motion = player.position() - .subtract(vec) - .scale(1 / 20f); - vec = vec.add(motion); - level.addParticle(blockParticleData, vec.x, vec.y, vec.z, motion.x, motion.y, motion.z); - return InteractionResult.SUCCESS; - } - } - return InteractionResult.SUCCESS; - - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInput.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInput.java deleted file mode 100644 index 6c406f764..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInput.java +++ /dev/null @@ -1,111 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import com.simibubi.create.content.equipment.wrench.IWrenchable; -import com.simibubi.create.foundation.block.IBE; -import net.minecraft.core.BlockPos; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.context.BlockPlaceContext; -import net.minecraft.world.item.context.UseOnContext; -import net.minecraft.world.level.BlockGetter; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.StateDefinition; -import net.minecraft.world.phys.BlockHitResult; -import net.minecraft.world.phys.shapes.CollisionContext; -import net.minecraft.world.phys.shapes.Shapes; -import net.minecraft.world.phys.shapes.VoxelShape; -import net.nuclearteam.createnuclear.CNBlockEntityTypes; -import net.nuclearteam.createnuclear.CNShapes; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.block.MultiDirectionalReactorBlock; -import org.jetbrains.annotations.NotNull; - -import javax.annotation.Nullable; - -public class ReactorFluidInput extends MultiDirectionalReactorBlock implements IWrenchable, IBE { - - public ReactorFluidInput(Properties properties) { - super(properties); - } - - @Override - public void onPlace(BlockState state, Level world, BlockPos pos, BlockState oldState, boolean moved) { - super.onPlace(state, world, pos, oldState, moved); - MultiblockHelpers.handleOnPlace(pos, world, ReactorControllerBlockEntity::addInputFluid); - } - - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); - } - - @Override - protected void createBlockStateDefinition(StateDefinition.Builder builder) { - builder.add(FACING); - super.createBlockStateDefinition(builder); - } - - @Override - public InteractionResult onWrenched(BlockState state, UseOnContext context) { - return InteractionResult.SUCCESS; - } - - @Override - public VoxelShape getBlockSupportShape(BlockState pState, BlockGetter pReader, BlockPos pPos) { - return Shapes.block(); - } - - @Override - public BlockState getStateForPlacement(BlockPlaceContext context) { - return this.defaultBlockState() - .setValue(FACING, context.getNearestLookingDirection().getOpposite()); - } - - @Override - public @NotNull VoxelShape getShape(BlockState state, BlockGetter worldIn, BlockPos pos, CollisionContext context) { - return CNShapes.REACTOR_FLUID_INPUT.get(state.getValue(FACING)); - } - - @Override - public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, - BlockHitResult ray) { - ItemStack heldItem = player.getItemInHand(hand); - boolean onClient = world.isClientSide; - - if (heldItem.isEmpty()) - return InteractionResult.PASS; - if (!player.isCreative()) - return InteractionResult.PASS; - - return PlayerInteractReactorFluidInput.interact(world, pos, player, hand, heldItem, onClient, ray); - } - - @Override - public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean isMoving) { - super.onRemove(state, world, pos, newState, isMoving); - MultiblockHelpers.handleRemoval(pos, world, ReactorControllerBlockEntity::removeInputFluid); - } - - @Override - public Class getBlockEntityClass() { - return ReactorFluidInputEntity.class; - } - - @Override - public BlockEntityType getBlockEntityType() { - return CNBlockEntityTypes.REACTOR_FLUID_INPUT.get(); - } - - @Override - public boolean hasAnalogOutputSignal(BlockState state) { - return true; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputEntity.java deleted file mode 100644 index 2e275cbf8..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputEntity.java +++ /dev/null @@ -1,235 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation; -import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; -import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; -import com.simibubi.create.foundation.fluid.SmartFluidTank; -import net.createmod.catnip.animation.LerpedFloat; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.templates.FluidTank; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.block.MultiDirectionalReactorBlock; -import org.jetbrains.annotations.NotNull; - -import java.util.List; - -public class ReactorFluidInputEntity extends SmartBlockEntity implements IHaveGoggleInformation { - - /** Default tank capacity while this input is not attached to any assembled reactor. */ - public static final int DEFAULT_CAPACITY = 16000; - - private final FluidTank internalTank; - private LazyOptional capability; - private LerpedFloat fluidLevel; - - public ReactorFluidInputEntity(BlockEntityType type, BlockPos pos, BlockState state) { - super(type, pos, state); - internalTank = new SmartFluidTank(DEFAULT_CAPACITY, this::onTankContentsChanged); - capability = LazyOptional.of(() -> internalTank); - - refreshCapability(); - } - - /** - * Returns the tank capacity for the given reactor size (tier). - * 5x5 -> tier 1, 7x7 -> tier 2, 9x9 -> tier 3. - */ - public static int getCapacityForReactorSize(int reactorSize) { - return switch (reactorSize) { - case 5 -> 144000; - case 7 -> 448000; - case 9 -> 848000; - default -> DEFAULT_CAPACITY; - }; - } - - /** - * Applies an explicit tank capacity to this input. - *

- * The per-reactor-size capacity ({@link #getCapacityForReactorSize(int)}) is the TOTAL the - * reactor should hold, split across all fluid inputs by {@code ReactorAssembler}, so the sum - * of every input's capacity stays equal to the configured value no matter how many inputs the - * player places. - */ - public void applyCapacity(int capacity) { - if (internalTank.getCapacity() == capacity) return; - internalTank.setCapacity(capacity); - if (level != null && !level.isClientSide) { - setChanged(); - sendData(); - } - } - - @Override - public void addBehaviours(List behaviours) { - } - - @Override - protected void write(CompoundTag tag, boolean clientPacket) { - super.write(tag, clientPacket); - CompoundTag tankTag = internalTank.writeToNBT(new CompoundTag()); - tag.put("tank", tankTag); - tag.putInt("capacity", internalTank.getCapacity()); - } - - @Override - protected void read(CompoundTag tag, boolean clientPacket) { - super.read(tag, clientPacket); - if (tag.contains("capacity")) - internalTank.setCapacity(tag.getInt("capacity")); - internalTank.readFromNBT(tag.getCompound("tank")); - - if (tag.contains("ForceFluidLevel") || fluidLevel == null) - fluidLevel = LerpedFloat.linear() - .startWithValue(getFillState()); - } - - public float getFillState() { - return (float) internalTank.getFluidAmount() / internalTank.getCapacity(); - } - - protected void onTankContentsChanged(FluidStack contents) { - // Avoid accessing level during deserialization when the block entity isn't attached yet - if (this.level == null) { - if (fluidLevel == null) - fluidLevel = LerpedFloat.linear() - .startWithValue(getFillState()); - return; - } - - if (!level.isClientSide) { - setChanged(); - sendData(); - } - - if (isVirtual()) { - if (fluidLevel == null) - fluidLevel = LerpedFloat.linear() - .startWithValue(getFillState()); - fluidLevel.chase(getFillState(), .5f, LerpedFloat.Chaser.EXP); - } - - if (!level.isClientSide && internalTank.getFluidAmount() == 0) { - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(level, worldPosition); - if (controller != null) controller.clearLockIfAllInputsEmpty(); - } - } - - @Override - public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - return containedFluidTooltip(tooltip, isPlayerSneaking, - this.getCapability(ForgeCapabilities.FLUID_HANDLER)); - } - - @Override - public void invalidate() { - super.invalidate(); - capability.invalidate(); - } - - @Override - public @NotNull LazyOptional getCapability(Capability cap, Direction side) { - if (!capability.isPresent()) refreshCapability(); - if (cap == ForgeCapabilities.FLUID_HANDLER) { - if (side != null && side != getBlockState().getValue(MultiDirectionalReactorBlock.FACING)) - return LazyOptional.empty(); - return capability.cast(); - } - - return super.getCapability(cap, side); - } - - private void refreshCapability() { - LazyOptional oldCap = capability; - capability = LazyOptional.of(FilteredFluidHandler::new); - oldCap.invalidate(); - } - - private class FilteredFluidHandler implements IFluidHandler { - private final IFluidHandler delegate = internalTank; - - @Override - public int getTanks() { - return delegate.getTanks(); - } - - @Override - public @NotNull FluidStack getFluidInTank(int tank) { - return delegate.getFluidInTank(tank); - } - - @Override - public int getTankCapacity(int tank) { - return delegate.getTankCapacity(tank); - } - - @Override - public boolean isFluidValid(int tank, @NotNull FluidStack stack) { - return delegate.isFluidValid(tank, stack); - } - - @Override - public int fill(FluidStack resource, FluidAction action) { - if (resource == null || resource.isEmpty()) return 0; - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(level, worldPosition); - BlockPos controllerPos = controller != null ? controller.getBlockPos() : null; - - // Fluid locks are server-authoritative (persisted per-level via PersistentFluidLocks). - // The client stays permissive; the server syncs the real tank state back. - if (controllerPos != null && level instanceof ServerLevel serverLevel - && !PersistentFluidLocks.get(serverLevel).canAccept(controllerPos, resource.getFluid())) { - return 0; - } - - int filled = delegate.fill(resource, action); - if (filled > 0 && action.execute() && controllerPos != null && level instanceof ServerLevel serverLevel) { - PersistentFluidLocks.get(serverLevel).tryLock(controllerPos, resource.getFluid()); - } - return filled; - } - - @Override - public @NotNull FluidStack drain(FluidStack resource, FluidAction action) { - FluidStack drained = delegate.drain(resource, action); - clearLockIfEmptied(drained, action); - return drained; - } - - @Override - public @NotNull FluidStack drain(int maxDrain, FluidAction action) { - FluidStack drained = delegate.drain(maxDrain, action); - clearLockIfEmptied(drained, action); - return drained; - } - - /** - * Releases the controller's fluid lock once this input has been fully drained. - * Server-authoritative: the lock lives in {@link PersistentFluidLocks}, so this is - * a no-op on the client. - */ - private void clearLockIfEmptied(FluidStack drained, FluidAction action) { - if (drained.isEmpty() || !action.execute() || !(level instanceof ServerLevel serverLevel)) - return; - if (!delegate.getFluidInTank(0).isEmpty()) - return; - - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(level, worldPosition); - if (controller != null) - PersistentFluidLocks.get(serverLevel).clearLock(controller.getBlockPos()); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputGenerator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputGenerator.java deleted file mode 100644 index ce60aa6ab..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/ReactorFluidInputGenerator.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import com.simibubi.create.foundation.data.SpecialBlockStateGen; -import com.tterrag.registrate.providers.DataGenContext; -import com.tterrag.registrate.providers.RegistrateBlockstateProvider; -import net.minecraft.core.Direction; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.client.model.generators.ModelFile; - -public class ReactorFluidInputGenerator extends SpecialBlockStateGen { - @Override - protected int getXRotation(BlockState state) { - return state.getValue(ReactorFluidInput.FACING) == Direction.DOWN ? 180 : 0; - } - - @Override - protected int getYRotation(BlockState state) { - return state.getValue(ReactorFluidInput.FACING).getAxis().isVertical() - ? 0 - : horizontalAngle(state.getValue(ReactorFluidInput.FACING)); - } - - @Override - public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, BlockState state) { - return prov - .models() - .getExistingFile(prov - .modLoc("block/reactor/fluid_input/fluid_input" + (state.getValue(ReactorFluidInput.FACING).getAxis().isVertical() - ? "_vertical" - : "" - ))); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/VirtualReactorInputFluid.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/VirtualReactorInputFluid.java deleted file mode 100644 index fb081591b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/fluid/VirtualReactorInputFluid.java +++ /dev/null @@ -1,89 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.fluid; - -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.level.material.Fluid; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import org.jetbrains.annotations.NotNull; - -import java.util.*; -import java.util.Map.Entry; - -/** - * A lightweight, in-memory aggregation of fluid quantities keyed by - * fluid ResourceLocation. This record is used to represent the combined - * input fluids available to a reactor without modifying the real handlers. - */ -public record VirtualReactorInputFluid(Map fluids) { - - /** - * Create an empty virtual inventory. - */ - public VirtualReactorInputFluid() { - this(new HashMap<>()); - } - - /** - * Add the contents of the provided FluidStack to this virtual inventory. - * Empty stacks or non-registered fluids are ignored. - * @param stack the fluid stack to add - */ - public void addFluid(@NotNull FluidStack stack) { - if (stack.isEmpty() || stack.getAmount() <= 0) return; - ResourceLocation id = ForgeRegistries.FLUIDS.getKey(stack.getFluid()); - if (id == null) return; - fluids.merge(id, (long) stack.getAmount(), Long::sum); - } - - /** - * Remove up to {@code amount} units of the specified fluid from this virtual inventory. - * Returns a FluidStack describing the removed amount (or {@link FluidStack#EMPTY}). - * @param fluidId fluid identifier - * @param amount maximum amount to remove - */ - public FluidStack removeFluid(@NotNull ResourceLocation fluidId, long amount) { - if (amount < 0 || fluidId == null) return FluidStack.EMPTY; - long current = fluids.getOrDefault(fluidId, 0L); - long removed = Math.min(current, amount); - if (removed == 0) return FluidStack.EMPTY; - long remaining = current - removed; - if (remaining == 0) fluids.remove(fluidId); - else fluids.put(fluidId, remaining); - - int removedInt = (int) Math.min(removed, Integer.MAX_VALUE); - return new FluidStack(ForgeRegistries.FLUIDS.getValue(fluidId), removedInt); - } - - /** - * Get the stored amount for the given fluid id. - * @param fluidId fluid identifier - * @return total amount stored for that fluid - */ - public long getAmount(@NotNull ResourceLocation fluidId) { - if (fluidId == null) return 0L; - return fluids.getOrDefault(fluidId, 0L); - } - - /** - * Convert a map of ResourceLocation->long into a list of BigFluidStack - * suitable for display or consumption elsewhere. - */ - public static List toBigList(Map map) { - List list = new ArrayList<>(); - for (Entry e : map.entrySet()) { - ResourceLocation id = e.getKey(); - long total = e.getValue(); - Fluid fluid = ForgeRegistries.FLUIDS.getValue(id); - if (fluid == null || total <= 0) continue; - int amount = (int) Math.min(total, BigFluidStack.INF); - list.add(new BigFluidStack(new FluidStack(fluid, amount), amount)); - } - return list; - } - - @Override - public @NotNull String toString() { - return "VirtualReactorInputFluid" + fluids.toString(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInput.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInput.java deleted file mode 100644 index 9392a12a7..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInput.java +++ /dev/null @@ -1,113 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; - -import com.simibubi.create.content.equipment.wrench.IWrenchable; -import com.simibubi.create.foundation.block.IBE; -import com.simibubi.create.foundation.item.ItemHelper; -import net.minecraft.core.BlockPos; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.InteractionHand; -import net.minecraft.world.InteractionResult; - -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.BlockItem; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.context.BlockPlaceContext; -import net.minecraft.world.level.BlockGetter; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.StateDefinition; - -import net.minecraft.world.phys.BlockHitResult; -import net.minecraft.world.phys.shapes.CollisionContext; -import net.minecraft.world.phys.shapes.VoxelShape; - -import net.minecraftforge.network.NetworkHooks; -import net.nuclearteam.createnuclear.CNBlockEntityTypes; -import net.nuclearteam.createnuclear.CNShapes; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; -import net.nuclearteam.createnuclear.foundation.block.MultiDirectionalReactorBlock; -import org.jetbrains.annotations.NotNull; - -import javax.annotation.Nullable; -import javax.annotation.ParametersAreNonnullByDefault; - - -@ParametersAreNonnullByDefault -public class ReactorRodInput extends MultiDirectionalReactorBlock implements IWrenchable, IBE { - - public ReactorRodInput(Properties properties) { - super(properties); - } - - @Override - protected void createBlockStateDefinition(StateDefinition.Builder builder) { - builder.add(FACING); - super.createBlockStateDefinition(builder); - } - - @Override - public InteractionResult use(BlockState state, Level worldIn, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) { - ItemStack itemInHand = player.getItemInHand(handIn); - - if (itemInHand.getItem() instanceof BlockItem) { - return InteractionResult.PASS; - } - - - if (worldIn.isClientSide()) {return InteractionResult.SUCCESS;} - - withBlockEntityDo(worldIn, pos, be -> NetworkHooks.openScreen((ServerPlayer) player, be, be::sendToMenu)); - return InteractionResult.SUCCESS; - } - - @Override - public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean isMoving) { - super.onPlace(state, level, pos, oldState, isMoving); - MultiblockHelpers.handleOnPlace(pos, level, ReactorControllerBlockEntity::addInput); - } - - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); - } - - - @Override - public void onRemove(BlockState pState, Level pLevel, BlockPos pPos, BlockState pNewState, boolean pIsMoving) { - // Only act when the block is actually removed/replaced, not on a mere state change - // (e.g. a FACING update) — otherwise rotating the block would spill its rods. - if (!pState.is(pNewState.getBlock())) { - // Drop the contents BEFORE super removes the block entity: super.onRemove() - // calls level.removeBlockEntity(pos), after which the inventory is gone. - withBlockEntityDo(pLevel, pPos, be -> ItemHelper.dropContents(pLevel, pPos, be.inventory)); - MultiblockHelpers.handleRemoval(pPos, pLevel, ReactorControllerBlockEntity::removeInput); - } - super.onRemove(pState, pLevel, pPos, pNewState, pIsMoving); - } - - @Override - public BlockState getStateForPlacement(BlockPlaceContext context) { - return this.defaultBlockState() - .setValue(FACING, context.getNearestLookingDirection().getOpposite()); - } - @Override - public @NotNull VoxelShape getShape(BlockState state, BlockGetter worldIn, BlockPos pos, CollisionContext context) { - return CNShapes.REACTOR_ROD_INPUT.get(state.getValue(FACING)); - } - - @Override - public Class getBlockEntityClass() { - return ReactorRodInputEntity.class; - } - - @Override - public BlockEntityType getBlockEntityType() { - return CNBlockEntityTypes.REACTOR_ROD_INPUT.get(); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputGenerator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputGenerator.java deleted file mode 100644 index 3789ac92f..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputGenerator.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; - -import com.simibubi.create.foundation.data.SpecialBlockStateGen; -import com.tterrag.registrate.providers.DataGenContext; -import com.tterrag.registrate.providers.RegistrateBlockstateProvider; -import net.minecraft.core.Direction; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.client.model.generators.ModelFile; - -public class ReactorRodInputGenerator extends SpecialBlockStateGen { - @Override - protected int getXRotation(BlockState state) { - return state.getValue(ReactorRodInput.FACING) == Direction.DOWN ? 180 : 0; - } - - @Override - protected int getYRotation(BlockState state) { - return state.getValue(ReactorRodInput.FACING).getAxis().isVertical() - ? 0 - : horizontalAngle(state.getValue(ReactorRodInput.FACING)); - } - - @Override - public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, BlockState state) { - return prov - .models() - .getExistingFile(prov - .modLoc("block/reactor/rod_input/rod_input" + (state.getValue(ReactorRodInput.FACING).getAxis().isVertical() - ? "_vertical" - : "" - ))); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputInventory.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputInventory.java deleted file mode 100644 index ecc72da36..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputInventory.java +++ /dev/null @@ -1,32 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; - - -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraftforge.items.ItemStackHandler; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; -import org.jetbrains.annotations.NotNull; - -public class ReactorRodInputInventory extends ItemStackHandler { - private final ReactorRodInputEntity be; - - public ReactorRodInputInventory(ReactorRodInputEntity be) { - super(1); - this.be = be; - } - - @Override - protected void onContentsChanged(int slot) { - super.onContentsChanged(slot); - be.setChanged(); - } - - @Override - public boolean isItemValid(int slot, @NotNull ItemStack stack) { - Level level = be.getLevel(); - return switch (slot) { - case 0 -> level != null && (TypeRodPredicate.isFuel(stack, level) || TypeRodPredicate.isCooled(stack, level)); - default -> !super.isItemValid(slot, stack); - }; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputMenu.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputMenu.java deleted file mode 100644 index 981c507d3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/ReactorRodInputMenu.java +++ /dev/null @@ -1,125 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; - -import com.simibubi.create.foundation.gui.menu.MenuBase; -import net.minecraft.client.Minecraft; -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.ClickType; -import net.minecraft.world.inventory.MenuType; -import net.minecraft.world.inventory.Slot; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.items.SlotItemHandler; -import net.nuclearteam.createnuclear.CNMenus; - -public class ReactorRodInputMenu extends MenuBase { - - - public ReactorRodInputMenu(MenuType type, int id, Inventory inv, FriendlyByteBuf extraData) { - super(type, id, inv, extraData); - } - - public ReactorRodInputMenu(MenuType type, int id, Inventory inv, ReactorRodInputEntity contentHolder) { - super(type, id, inv, contentHolder); - } - - public static ReactorRodInputMenu create(int id, Inventory inv, ReactorRodInputEntity contentHolder) { - return new ReactorRodInputMenu(CNMenus.SLOT_ITEM_STORAGE.get(), id, inv, contentHolder); - } - - @Override - public ItemStack quickMoveStack(Player playerIn, int index) { - ItemStack result = ItemStack.EMPTY; - Slot slot = this.slots.get(index); - if (slot != null && slot.hasItem()) { - ItemStack stackInSlot = slot.getItem(); - result = stackInSlot.copy(); - - int playerInventorySize = player.getInventory().items.size(); // normally 36 - int containerStart = playerInventorySize; - int containerEnd = containerStart + 1; // 1 machine slot - - // Clicked a machine slot (after the player slots) - if (index >= containerStart && index < containerEnd) { - if (!this.moveItemStackTo(stackInSlot, 0, playerInventorySize, true)) { - return ItemStack.EMPTY; - } - } else { - // Clicked a player slot — try moving the stack into the machine container - if (!this.moveItemStackTo(stackInSlot, containerStart, containerEnd, false)) { - return ItemStack.EMPTY; - } - } - - if (stackInSlot.isEmpty()) { - slot.set(ItemStack.EMPTY); - } else { - slot.setChanged(); - } - - if (stackInSlot.getCount() == result.getCount()) { - return ItemStack.EMPTY; - } - - slot.onTake(playerIn, stackInSlot); - } - return result; - } - - - @Override - protected ReactorRodInputEntity createOnClient(FriendlyByteBuf extraData) { - ClientLevel world = Minecraft.getInstance().level; - BlockEntity entity = world.getBlockEntity(extraData.readBlockPos()); - if (entity instanceof ReactorRodInputEntity reactorRodInputEntity) { - reactorRodInputEntity.readClient(extraData.readNbt()); - return reactorRodInputEntity; - } - return null; - } - - @Override - protected void initAndReadInventory(ReactorRodInputEntity contentHolder) { - - } - - @Override - protected void addSlots() { - - // player Slots - for (int hotbarSlot = 0; hotbarSlot < 9; ++hotbarSlot) { - this.addSlot(new Slot(player.getInventory(), hotbarSlot, -31 + hotbarSlot * 18, 155)); - } - - for (int row = 0; row < 3; ++row) { - for (int col = 0; col < 9; ++col) { - this.addSlot(new Slot(player.getInventory(), col + row * 9 + 9, -31 + col * 18, 97 + row * 18)); - } - } - - Slot slot1 = new SlotItemHandler(contentHolder.inventory, 0, 42, 29); - - addSlot(slot1); - } - - @Override - protected void saveData(ReactorRodInputEntity contentHolder) { - } - - @Override - public void clicked(int slotId, int button, ClickType clickType, Player player) { - if (clickType == ClickType.THROW) { - int[] targetSlotIds = {9, 18, 27, 0, 1, 28, 19, 10, 16, 17, 26, 25, 34, 35, 8, 7}; - for (int id : targetSlotIds) { - if (slotId == id) { - clickType = ClickType.PICKUP; - super.clicked(slotId, button, clickType, player); - } - } - return; - } - super.clicked(slotId, button, clickType, player); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/VirtualReactorInputsItem.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/VirtualReactorInputsItem.java deleted file mode 100644 index b9807e885..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/input/item/VirtualReactorInputsItem.java +++ /dev/null @@ -1,19 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.input.item; - -import com.simibubi.create.content.logistics.BigItemStack; -import net.nuclearteam.createnuclear.CNItems; -import org.jetbrains.annotations.NotNull; - -public record VirtualReactorInputsItem(int fuel, int cooler) { - public VirtualReactorInputsItem() { - this(0,0); - } - - - - @Override - public @NotNull String toString() { - return "fuel: " + fuel + " cooler: " + cooler; - } -} - diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutput.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutput.java index 84364f67e..eb77a457f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutput.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutput.java @@ -1,29 +1,23 @@ package net.nuclearteam.createnuclear.content.multiblock.output; -import com.simibubi.create.AllBlocks; import com.simibubi.create.content.equipment.wrench.IWrenchable; import com.simibubi.create.content.kinetics.base.DirectionalKineticBlock; import com.simibubi.create.foundation.block.IBE; -import net.createmod.catnip.placement.IPlacementHelper; -import net.createmod.catnip.placement.PlacementHelpers; -import net.createmod.catnip.placement.PlacementOffset; -import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.Direction.Axis; -import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.core.Vec3i; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; @@ -33,19 +27,19 @@ import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Objects; -import javax.annotation.ParametersAreNonnullByDefault; -import java.util.function.Predicate; -@ParametersAreNonnullByDefault -@MethodsReturnNonnullByDefault public class ReactorOutput extends DirectionalKineticBlock implements IWrenchable, IBE { - public static final IntegerProperty DIR = IntegerProperty.create("dir", 0, 2); - private static final int placementHelperId = PlacementHelpers.register(new PlacementHelper()); + //public static final IntegerProperty SPEED = IntegerProperty.create("speed", 0, 256); + public static final IntegerProperty DIR = IntegerProperty.create("dir", 0, 2); public ReactorOutput(Properties properties) { super(properties); @@ -53,31 +47,54 @@ public ReactorOutput(Properties properties) { @Override protected void createBlockStateDefinition(StateDefinition.Builder builder) { + //builder.add(SPEED); builder.add(DIR); super.createBlockStateDefinition(builder); } + @Override + public @NotNull InteractionResult use(BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { + if (level.isClientSide) + return InteractionResult.SUCCESS; + else { + ReactorControllerBlock controller = FindController(pos, level, level.players(), false); + if (controller != null){ + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, pos.above(3)); + assert entity != null; + if (entity.getAssembled()){ + ReactorOutputEntity control = Objects.requireNonNull(getBlockEntity(level, pos)); + if (control.getDir() == 0) + control.setDir(1, level, pos); + else control.setDir(0, level, pos); + } + } + return InteractionResult.CONSUME; + } + } @Override public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean isMoving) { super.onPlace(state, level, pos, oldState, isMoving); - MultiblockHelpers.handleOnPlace(pos, level, ReactorControllerBlockEntity::addOutput); + List players = level.players(); + FindController(pos, level, players, true); } @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @javax.annotation.Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); + public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { + super.playerDestroy(level, player, pos, state, blockEntity, tool); + List players = level.players(); + FindController(pos, level, players, false); } @Override public void onRemove(BlockState pState, Level pLevel, BlockPos pPos, BlockState pNewState, boolean pIsMoving) { super.onRemove(pState, pLevel, pPos, pNewState, pIsMoving); - MultiblockHelpers.handleRemoval(pPos, pLevel, ReactorControllerBlockEntity::removeOutput); + List players = pLevel.players(); + FindController(pPos, pLevel, players, false); } @Override - public VoxelShape getShape(BlockState state, BlockGetter worldIn, BlockPos pos, CollisionContext context) { + public @NotNull VoxelShape getShape(BlockState state, BlockGetter worldIn, BlockPos pos, CollisionContext context) { return CNShapes.REACTOR_OUTPUT.get(state.getValue(FACING)); } @@ -87,21 +104,7 @@ public BlockState getStateForPlacement(BlockPlaceContext context) { if ((context.getPlayer() != null && context.getPlayer() .isShiftKeyDown()) || preferred == null) return super.getStateForPlacement(context); - return defaultBlockState().setValue(FACING, preferred).setValue(DIR, 0); - } - - @Override - public InteractionResult use(BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hitResult) { - ItemStack heldItem = player.getItemInHand(hand); - IPlacementHelper placementHelper = PlacementHelpers.get(placementHelperId); - if (!player.isShiftKeyDown() && player.mayBuild()) { - if (placementHelper.matchesItem(heldItem) && placementHelper.getOffset(player, level, state, pos, hitResult) - .placeInWorld(level, (BlockItem) heldItem.getItem(), player, hand, hitResult) - .consumesAction()) - return InteractionResult.SUCCESS; - } - - return super.use(state, level, pos, player, hand, hitResult); + return defaultBlockState().setValue(FACING, preferred)/*.setValue(SPEED, 0)*/.setValue(DIR, 0); } // IRotate: @@ -137,27 +140,18 @@ public BlockEntityType getBlockEntityType() { return CNBlockEntityTypes.REACTOR_OUTPUT.get(); } - private static class PlacementHelper implements IPlacementHelper { - - @Override - public Predicate getItemPredicate() { - return AllBlocks.SHAFT::isIn; - } - - @Override - public Predicate getStatePredicate() { - return s -> s.getBlock() instanceof ReactorOutput; - } - - @Override - public PlacementOffset getOffset(Player player, Level world, BlockState state, BlockPos pos, BlockHitResult ray) { - Direction facing = state.getValue(FACING); - BlockPos target = pos.relative(facing); - - if (!world.getBlockState(target).canBeReplaced()) - return PlacementOffset.fail(); - - return PlacementOffset.success(target, s -> s.setValue(BlockStateProperties.AXIS, facing.getAxis())); + public ReactorControllerBlock FindController(BlockPos blockPos, Level level, List players, boolean first) { + BlockPos newBlock; // to find the controller and verify the pattern + Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + newBlock = new BlockPos(pos.getX(), pos.getY() + 3, pos.getZ()); + if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get())) { // verifying the pattern + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(newBlock).getBlock(); + controller.Verify(level.getBlockState(newBlock), newBlock, level, players, first); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, newBlock); + if (entity.created) { + return controller; + } } + return null; } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutputEntity.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutputEntity.java index 6487fcfdb..fbf69ecf0 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutputEntity.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/output/ReactorOutputEntity.java @@ -12,22 +12,33 @@ import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.Vec3; import net.minecraft.util.Mth; +import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.content.multiblock.pattern.ReactorPattern; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; import java.util.List; +import java.util.Objects; + +import static net.nuclearteam.createnuclear.content.multiblock.output.ReactorOutput.DIR; + public class ReactorOutputEntity extends GeneratingKineticBlockEntity { - public int speed = 0; + public int speed = 1; public float heat = 0; - protected ReactorPattern pattern = new ReactorPattern(); + ReactorControllerBlock controller = null; + ReactorControllerBlockEntity controllerEntity = null; + // protected ScrollValueBehaviour generatedSpeed; protected float generatedSpeed; public ReactorOutputEntity(BlockEntityType type, BlockPos pos, BlockState state) { @@ -37,6 +48,11 @@ public ReactorOutputEntity(BlockEntityType type, BlockPos pos, BlockState sta @Override public void addBehaviours(List behaviours) { super.addBehaviours(behaviours); + // generatedSpeed = new KineticScrollValueBehaviour(CreateNuclearLang.translateDirect("kinetics.reactor_output.rotation_speed"), this, new ReactorOutputValue()); + // generatedSpeed.between(-1500000, 1500000); + // generatedSpeed.setValue(speed); + // generatedSpeed.withCallback(i -> this.updateGeneratedRotation()); + // behaviours.add(generatedSpeed); } @@ -61,33 +77,35 @@ public void setSpeedAndUpdate(int speed) { setChanged(); } - // Tracks the output's linked block position for persistence across reloads. - private BlockPos outputPos; - @Override - protected void read(CompoundTag compound, boolean clientPacket) { - super.read(compound, clientPacket); - - // Restore the generated rotation speed - generatedSpeed = compound.getFloat("generatedSpeed"); - - // Restore the output position, if present in the tag - if (compound.contains("outputPos")) { - this.outputPos = BlockPos.of(compound.getLong("outputPos")); - } - } + protected void read(CompoundTag compound, boolean clientPacket) { + super.read(compound, clientPacket); + generatedSpeed = compound.getFloat("generatedSpeed"); + } + + + + @Override + public void write(CompoundTag compound, boolean clientPacket) { + super.write(compound, clientPacket); + compound.putFloat("generatedSpeed", generatedSpeed); + } @Override - public void write(CompoundTag compound, boolean clientPacket) { - super.write(compound, clientPacket); - - // Persist the generated rotation speed - compound.putFloat("generatedSpeed", generatedSpeed); - - // Persist the output position, if set - if (this.outputPos != null) { - compound.putLong("outputPos", this.outputPos.asLong()); - } + public void tick() { + super.tick(); + + BlockGetter level = getLevel(); + + if (level.getBlockState(getBlockPos().above(3)).getBlock() == CNBlocks.REACTOR_CONTROLLER.get()) { + controller = (ReactorControllerBlock) level.getBlockState(getBlockPos().above(3)).getBlock(); + controllerEntity = (ReactorControllerBlockEntity) level.getBlockEntity(getBlockPos().above(3)); + if (controllerEntity != null) { + if (!controllerEntity.getAssembled() && getSpeed() != 0) { + setSpeed(0); + } + } + } else setSpeed(0); } @Override @@ -122,17 +140,45 @@ public void initialize() { if (!hasSource() || getGeneratedSpeed() > getTheoreticalSpeed()) { - assert level != null; - pattern.findController(getBlockPos(), level, true); + FindController(getBlockPos(), Objects.requireNonNull(getLevel())); + } + } + + public void FindController(BlockPos pos, Level level){ + if (level.getBlockState(pos.above(3)).getBlock() == CNBlocks.REACTOR_CONTROLLER.get()){ + ReactorControllerBlock controller = (ReactorControllerBlock)level.getBlockState(pos.above(3)).getBlock(); + controller.Verify(controller.defaultBlockState(), pos.above(3), level, level.players(), false); } } + public void setSpeed(int speed) { + this.speed = speed; + } + + public int getDir() { + BlockState state = getBlockState(); + return state.getValue(DIR); + } + + public void setDir(int dir, Level level, BlockPos pos) { + BlockState state = getBlockState(); + level.setBlockAndUpdate(pos, state.setValue(DIR, dir)); + } + @Override public float getGeneratedSpeed() { + // if (!CNBlocks.REACTOR_OUTPUT.has(getBlockState())) + // return 0; + // return speed; //convertToDirection(speed, getBlockState().getValue(ReactorOutput.FACING)); return Mth.clamp(generatedSpeed, 0, 1500000); } - static class ReactorOutputValue extends ValueBoxTransform.Sided { + @Override + protected Block getStressConfigKey() { + return super.getStressConfigKey(); + } + + class ReactorOutputValue extends ValueBoxTransform.Sided { @Override protected Vec3 getSouthLocation() { diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/pattern/ReactorPattern.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/pattern/ReactorPattern.java deleted file mode 100644 index 97628c18d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/pattern/ReactorPattern.java +++ /dev/null @@ -1,114 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.pattern; - -import net.minecraft.core.BlockPos; -import net.minecraft.core.Vec3i; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.pattern.BlockInWorld; -import net.minecraft.world.level.levelgen.structure.BoundingBox; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.content.multiblock.ReactorAssembler; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import org.jetbrains.annotations.Nullable; - -import java.util.function.Predicate; - -public class ReactorPattern { - - private static final Predicate blockInWorldAPredicate = state -> - stateIs(CNBlocks.REACTOR_CASING.get()).test(state) - || stateIs(CNBlocks.REACTOR_OUTPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_ROD_INPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_FLUID_INPUT.get()).test(state) - || stateIs(CNBlocks.REACTOR_ALARM.get()).test(state) - ; - - private static Predicate stateIs(Block block) { - return a -> { - BlockState state = a.getState(); - return state != null && state.is(block); - }; - } - - @FunctionalInterface - private interface ControllerVisitor { - boolean visit(BlockPos controllerPos, ReactorControllerBlockEntity entity); - } - - private void scanControllerCandidates(BlockPos blockPos, Level level, ControllerVisitor visitor) { - BlockPos newBlock; - Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); - for (int y = pos.getY()-5; y != pos.getY()+6; y+=1) { - for (int x = pos.getX()-9; x != pos.getX()+10; x+=1) { - for (int z = pos.getZ()-9; z != pos.getZ()+10; z+=1) { - newBlock = new BlockPos(x, y, z); - if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get()) - && level.getBlockEntity(newBlock) instanceof ReactorControllerBlockEntity entity) { - if (visitor.visit(newBlock, entity)) { - return; - } - } - } - } - } - } - - public void findController(BlockPos blockPos, Level level, boolean first){ - scanControllerCandidates(blockPos, level, ((controllerPos, entity) -> { - boolean inRange = isInReactorRange(entity.getMultiblockPos(), blockPos); - if (first) { - if (inRange || !entity.isAssembled()) { - ReactorAssembler.assemble(controllerPos, level); - } - } else if (inRange) { - ReactorAssembler.disassemble(controllerPos, level); - } - - return false; - })); - } - - public BlockPos findControllerPos(BlockPos blockPos, Level level, boolean first){ - BlockPos[] found = {null}; - scanControllerCandidates(blockPos, level, ((controllerPos, entity) -> { - boolean inRange = isInReactorRange(entity.getMultiblockPos(), blockPos); - if (first) { - if (inRange || !entity.isAssembled()) { - ReactorAssembler.assemble(controllerPos, level); - } - } else if (inRange) { - ReactorAssembler.disassemble(controllerPos, level); - } - - if (isInReactorRange(entity.getMultiblockPos(), blockPos)) { - found[0] = controllerPos; - return true; - } - - return false; - })); - - return found[0]; - } - - public BlockPos findControllerPos(BlockPos blockPos, Level level){ - BlockPos[] found = {null}; - scanControllerCandidates(blockPos, level, ((controllerPos, entity) -> { - ReactorAssembler.assemble(controllerPos, level); - if (isInReactorRange(entity.getMultiblockPos(), blockPos)) { - found[0] = controllerPos; - return true; - } - - return false; - })); - - return found[0]; - } - - public boolean isInReactorRange(@Nullable BoundingBox reactorPos, BlockPos blockPos) { - return reactorPos != null && reactorPos.isInside(blockPos); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorCooler/ReactorCooler.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorCooler/ReactorCooler.java new file mode 100644 index 000000000..7ff6fc0fb --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorCooler/ReactorCooler.java @@ -0,0 +1,66 @@ +package net.nuclearteam.createnuclear.content.multiblock.reactorCooler; + +import com.simibubi.create.content.equipment.wrench.IWrenchable; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; + +import javax.annotation.Nullable; +import java.util.List; + +public class ReactorCooler extends Block implements IWrenchable { + public ReactorCooler(Properties properties) { + super(properties); + } + + + @Override // Called when the block is placed on the world + public void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { + super.onPlace(state, level, pos, oldState, movedByPiston); + List players = level.players(); + FindController(pos, level, players, true); + } + + @Override // called when the player destroys the block, with or without a tool + public void playerDestroy(Level level, Player player, BlockPos pos, BlockState state, @Nullable BlockEntity blockEntity, ItemStack tool) { + super.playerDestroy(level, player, pos, state, blockEntity, tool); + List players = level.players(); + FindController(pos, level, players, false); + } + + @Override + public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean movedByPiston) { + super.onRemove(state, level, pos, newState, movedByPiston); + List players = level.players(); + FindController(pos, level, players, false); + } + + public ReactorControllerBlock FindController(BlockPos blockPos, Level level, List players, boolean first){ // Function that checks the surrounding blocks in order + BlockPos newBlock; // to find the controller and verify the pattern + Vec3i pos = new Vec3i(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + for (int y = pos.getY()-3; y != pos.getY()+4; y+=1) { + for (int x = pos.getX()-5; x != pos.getX()+5; x+=1) { + for (int z = pos.getZ()-5; z != pos.getZ()+5; z+=1) { + newBlock = new BlockPos(x, y, z); + if (level.getBlockState(newBlock).is(CNBlocks.REACTOR_CONTROLLER.get())) { // verifying the pattern + ReactorControllerBlock controller = (ReactorControllerBlock) level.getBlockState(newBlock).getBlock(); + controller.Verify(level.getBlockState(newBlock), newBlock, level, players, first); + ReactorControllerBlockEntity entity = controller.getBlockEntity(level, newBlock); + if (entity.created) { + return controller; + } + } + } + } + } + return null; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultHeatCalculator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultHeatCalculator.java deleted file mode 100644 index 6de95ac6d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultHeatCalculator.java +++ /dev/null @@ -1,111 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Item; -import net.minecraft.world.level.Level; -import net.minecraftforge.items.ItemStackHandler; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRod; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.bluePrintItem.ReactorBluePrintItem; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class DefaultHeatCalculator implements IHeatCalculator { - private static final int[][] FORMATTED_PATTERN = new int[][]{ - {99,99,99,0,1,2,99,99,99}, - {99,99,3,4,5,6,7,99,99}, - {99,8,9,10,11,12,13,14,99}, - {15,16,17,18,19,20,21,22,23}, - {24,25,26,27,28,29,30,31,32}, - {33,34,35,36,37,38,39,40,41}, - {99,42,43,44,45,46,47,48,99}, - {99,99,49,50,51,52,53,99,99}, - {99,99,99,54,55,56,99,99,99} - }; - private static final int[][] OFFSETS = { {1, 0}, {-1, 0}, {0, 1}, {0, -1} }; - - private static final Map> NEIGHBORS_BY_SLOT = buildNeighborsBySlot(); - - private static Map> buildNeighborsBySlot() { - Map> result = new HashMap<>(); - for (int row = 0; row < FORMATTED_PATTERN.length; row++) { - for (int col = 0; col < FORMATTED_PATTERN[row].length; col++) { - int slot = FORMATTED_PATTERN[row][col]; - if (slot == 99) continue; - - List neighbors = new ArrayList<>(); - for (int[] offset : OFFSETS) { - int nj = row + offset[0]; - int nk = col + offset[1]; - - if (nj < 0 || nj >= FORMATTED_PATTERN.length || nk < 0 || nk >= FORMATTED_PATTERN[nj].length) continue; - - int neighborSlot = FORMATTED_PATTERN[nj][nk]; - if (neighborSlot != 99) neighbors.add(neighborSlot); - } - - result.put(slot, neighbors); - } - } - - return result; - } - - @Override - public double computeHeat(BigFluidStack bigFluidStack, ReactorFluidType type, ReactorControllerInventory inventory, double overHeat, ReactorDisplayState displayState, Level level) { - double heat = 0; - - ItemStackHandler pattern = ReactorBluePrintItem.getItemStorage(inventory.getStackInSlot(0)); - - Map availableItems = displayState != null && displayState.items() != null - ? new HashMap<>(displayState.items()) - : new HashMap<>(); - - Map actualRods = new HashMap<>(); - - for (int slot = 0; slot < pattern.getSlots(); slot++) { - ItemStack currentStack = pattern.getStackInSlot(slot); - if (currentStack.isEmpty()) continue; - - Item rodItem = currentStack.getItem(); - if (availableItems.getOrDefault(rodItem, 0) > 0) { - availableItems.put(rodItem, availableItems.get(rodItem) - 1); - actualRods.put(slot, currentStack); - } - } - - for (Map.Entry entry : actualRods.entrySet()) { - int slot = entry.getKey(); - ItemStack currentStack = entry.getValue(); - RodType rod = RodType.resolveRodType(currentStack.getItem(), level); - - if (!rod.isNotEmptyItem() || rod.type() == TypeRod.NONE) continue; - - heat += rod.baseRodHeat().get(); - - // find position in formattedPattern and check neighbors - for (int neighborSlot : NEIGHBORS_BY_SLOT.getOrDefault(slot, List.of())) { - ItemStack neighborStack = actualRods.get(neighborSlot); - if (neighborStack == null) continue; - - RodType neighborRod = RodType.resolveRodType(neighborStack.getItem(), level); - if (!neighborRod.isNotEmptyItem()) continue; - - if (TypeRodPredicate.isFuel(rod) && TypeRodPredicate.isFuel(neighborRod)) { - heat += rod.proximityRodHeat().get(); - } else if (TypeRodPredicate.isCooled(rod) && TypeRodPredicate.isFuel(neighborRod)) { - heat += neighborRod.baseRodHeat().get() * rod.proximityRodHeat().get(); - } - } - } - return Math.max(0, heat + overHeat); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultOverheatController.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultOverheatController.java deleted file mode 100644 index 54ab6e633..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/DefaultOverheatController.java +++ /dev/null @@ -1,45 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; - -class DefaultOverheatController implements IOverheatController { - private int overFlowHeatTimer = 0; - private int overFlowLimiter = 30; - private double overHeat = 0; - - private final int liquidTimer = 3600; - - @Override - public void updateState(HeatBalance heatBalance, int currentHeat, BigFluidStack bigFluidStack, ReactorFluidType type) { - int fluidAmount = bigFluidStack == null ? 0 : bigFluidStack.amount; - int fluidEfficiency = type == null ? -1 : type.efficiency(); - boolean exceedsFluidMaxHeat = type != null && Math.abs(currentHeat) > type.maxHeat(); - - boolean rodMalus = heatBalance.resolve() == EquilibriumState.OVERHEATING; - boolean fluidMalus = fluidEfficiency == -1 || fluidAmount < fluidEfficiency || exceedsFluidMaxHeat; - - int malusPoints = (rodMalus ? 1 : 0) + (fluidMalus ? 1 : 0); - - if (malusPoints > 0) { - overFlowHeatTimer++; - if (overFlowHeatTimer >= overFlowLimiter) { - overHeat += malusPoints; - overFlowHeatTimer = 0; - overFlowLimiter = Math.max(2, overFlowLimiter - malusPoints); - } - } else { - overFlowHeatTimer = 0; - overFlowLimiter = 30; - if (overHeat > 0) overHeat -= 2; - else overHeat = 0; - } - } - - @Override - public double getOverHeat() { return overHeat; } - - - @Override - public int getLiquidTimer() { return liquidTimer; } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/EquilibriumState.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/EquilibriumState.java deleted file mode 100644 index 3dbe6ea07..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/EquilibriumState.java +++ /dev/null @@ -1,21 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -/** - * Reactor thermal equilibrium state, derived from the fuel:cooler ratio - * (wiki reference: {@code heatPoints / coolingPoints} ratio compared to 6). - *

- * Only {@link #OVERHEATING} is currently consumed by - * {@link DefaultOverheatController} (triggers the escalation toward - * shutdown/explosion). {@link #BALANCED} and {@link #OVERCOOLING} are kept - * for future versions (wiki-style status display, output bonus/malus) but - * have no effect on overheating today: a reactor in overcooling is simply - * suboptimal (less heat produced), not penalized. - */ -public enum EquilibriumState { - /** ratio > 6:1 — too much fuel for the cooling, leads to explosion. */ - OVERHEATING, - /** ratio == 6:1 — exact wiki equilibrium. */ - BALANCED, - /** ratio < 6:1 — safe but suboptimal output, no malus. */ - OVERCOOLING -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatBalance.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatBalance.java deleted file mode 100644 index ea6b3f921..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatBalance.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -/** - * Thermal balance of a pattern: heat points (fuel) and cooling points - * (cooler), each weighted by {@link net.nuclearteam.createnuclear.api.multiblock.rods.RodType#ratio()}. - *

- * Since {@code graphiteHeatRatio} switched to a positive value (1), - * {@code heatPoints} and {@code coolingPoints} are both raw positive sums - * (e.g. uranium=2/rod, thorium=1/rod, graphite=1/rod) — the 6:1 equilibrium - * ratio (wiki reference) is therefore no longer implicit in the config and - * must be compared explicitly via {@link #TARGET_RATIO}. - */ -public record HeatBalance(int heatPoints, int coolingPoints) { - /** Reference fuel:cooler ratio (wiki) at equilibrium. */ - public static final int TARGET_RATIO = 6; - - /** - * Resolves the equilibrium state from this balance. - * - * @return {@link EquilibriumState#OVERHEATING} if no cooler is present - * while there is fuel, otherwise the state corresponding to the - * comparison of {@code heatPoints / coolingPoints} against - * {@link #TARGET_RATIO} - */ - public EquilibriumState resolve() { - if (coolingPoints == 0) return heatPoints() > 0 ? EquilibriumState.OVERHEATING : EquilibriumState.BALANCED; - - double ration = (double) heatPoints() / coolingPoints(); - if (ration > TARGET_RATIO) return EquilibriumState.OVERHEATING; - if (ration < TARGET_RATIO) return EquilibriumState.OVERCOOLING; - - return EquilibriumState.BALANCED; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatManager.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatManager.java deleted file mode 100644 index e546466a8..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/HeatManager.java +++ /dev/null @@ -1,33 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; - -/** - * HeatManager facade delegating to extracted components (in separate files). - */ -public class HeatManager { - private final IHeatCalculator calculator; - private final IOverheatController overheatController; - - public HeatManager(IHeatCalculator calculator, IOverheatController overheatController) { - this.calculator = calculator; - this.overheatController = overheatController; - } - - public HeatManager() { - this(new DefaultHeatCalculator(), new DefaultOverheatController()); - } - - public double calculateHeat(BigFluidStack bigFluidStack, HeatBalance heatBalance, int previousHeat, ReactorControllerInventory inventory, Level level, ReactorDisplayState displayState) { - ReactorFluidType type = bigFluidStack == null ? null : bigFluidStack.getFluidtype(level); - overheatController.updateState(heatBalance, previousHeat, bigFluidStack, type); - - return calculator.computeHeat(bigFluidStack, type, inventory, overheatController.getOverHeat(), displayState, level); - } - - public int getLiquidTimer() { return overheatController.getLiquidTimer();} -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IHeatCalculator.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IHeatCalculator.java deleted file mode 100644 index 09dbba96a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IHeatCalculator.java +++ /dev/null @@ -1,11 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -import net.minecraft.world.level.Level; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; - -public interface IHeatCalculator { - double computeHeat(BigFluidStack bigFluidStack, ReactorFluidType type, ReactorControllerInventory inventory, double overHeat, ReactorDisplayState displayState, Level level); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IOverheatController.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IOverheatController.java deleted file mode 100644 index 62090d526..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reactorLogic/IOverheatController.java +++ /dev/null @@ -1,10 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.reactorLogic; - -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; - -public interface IOverheatController { - void updateState(HeatBalance heatBalance, int currentHeat, BigFluidStack bigFluidStack, ReactorFluidType type); - double getOverHeat(); - int getLiquidTimer(); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reinforced/ReinforcedGlassBlock.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reinforced/ReinforcedGlassBlock.java index ae7d0c488..7efb05f6f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reinforced/ReinforcedGlassBlock.java +++ b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/reinforced/ReinforcedGlassBlock.java @@ -3,10 +3,7 @@ import com.simibubi.create.content.decoration.palettes.ConnectedGlassBlock; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.BlockAndTintGetter; -import net.minecraft.world.level.Level; import net.minecraft.world.level.block.GlassBlock; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.BlockStateProperties; @@ -14,19 +11,10 @@ import net.minecraft.world.level.material.FluidState; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancementBehaviour; - -import javax.annotation.Nullable; public class ReinforcedGlassBlock extends ConnectedGlassBlock { public ReinforcedGlassBlock(Properties properties) { super(properties); } - @Override - public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity pPlacer, ItemStack stack) { - super.setPlacedBy(level, pos, state, pPlacer, stack); - MultiblockHelpers.handleAdvancedPlacedBy(pos, level, pPlacer); - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/rod/CNRodTypes.java b/src/main/java/net/nuclearteam/createnuclear/content/multiblock/rod/CNRodTypes.java deleted file mode 100644 index 24d56c8c3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/multiblock/rod/CNRodTypes.java +++ /dev/null @@ -1,42 +0,0 @@ -package net.nuclearteam.createnuclear.content.multiblock.rod; - -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.item.Items; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; - -import static net.nuclearteam.createnuclear.api.ItemRodTypesValue.DEFAULT_ROD_TYPE; - -public class CNRodTypes { - /** - * Static registry of rod types ({@code RodType}) for the CreateNuclear mod. - * - *

This class exposes the {@link ResourceKey}s and the {@code bootstrap} - * method invoked by the datapack system to register rod types used by the - * multiblock (for example, fuel rods and cooler rods). The examples below - * show how to create a {@code RodType} via its {@code RodType.Builder}.

- * - *

Example — Custom Rod:

- *
{@code
-     * register(ctx, "name", new RodType.Builder()
-     *     .baseRodHeat(int)
-     *     .proximityRodHeat(int)
-     *     .rodTimer(int)
-     *     .item(Item)
-     *     .fuelRodType()
-     *     .build());
-     * }
- * - * @see net.nuclearteam.createnuclear.api.multiblock.rods.RodType - * @see net.nuclearteam.createnuclear.api.CreateNuclearRegistries - */ - public static void bootstrap(BootstapContext ctx) { - register(ctx, "fallback", DEFAULT_ROD_TYPE); - } - - private static void register(BootstapContext ctx, String name, RodType type) { - ctx.register(ResourceKey.create(CreateNuclearRegistries.ROD_TYPE, CreateNuclear.asResource(name)), type); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticles.java b/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticles.java deleted file mode 100644 index e199d6a08..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticles.java +++ /dev/null @@ -1,50 +0,0 @@ -package net.nuclearteam.createnuclear.content.particles; - -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.client.particle.*; -import net.minecraft.util.RandomSource; - -import javax.annotation.Nullable; - -public class IrradiatedParticles extends TextureSheetParticle { - protected IrradiatedParticles(ClientLevel pLevel, double pX, double pY, double pZ, - SpriteSet spriteSet, double pXSpeed, double pYSpeed, double pZSpeed) { - super(pLevel, pX, pY, pZ, pXSpeed, pYSpeed, pZSpeed); - - RandomSource randomSource = level.random; - - this.xo = randomSource.nextGaussian() * (double)1.0E-6f; - this.yo = randomSource.nextGaussian() * (double)1.0E-4f; - this.zo = randomSource.nextGaussian() * (double)1.0E-6f; - - this.quadSize *= this.random.nextFloat() * 0.6f + 0.6f; - this.hasPhysics = false; - this.gravity = 0.0f; - - this.friction = 0.8f; - this.lifetime = 40; - - this.setSpriteFromAge(spriteSet); - - } - - @Override - public ParticleRenderType getRenderType() { - return ParticleRenderType.PARTICLE_SHEET_TRANSLUCENT; - } - - public static class Provider implements ParticleProvider { - private final SpriteSet spriteSet; - - public Provider(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - @Nullable - @Override - public Particle createParticle(IrradiatedParticlesData pType, ClientLevel pLevel, double pX, double pY, double pZ, - double pXSpeed, double pYSpeed, double pZSpeed) { - return new IrradiatedParticles(pLevel, pX, pY, pZ, this.spriteSet, pXSpeed, pYSpeed, pZSpeed); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticlesData.java b/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticlesData.java deleted file mode 100644 index feec3db65..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/particles/IrradiatedParticlesData.java +++ /dev/null @@ -1,84 +0,0 @@ -package net.nuclearteam.createnuclear.content.particles; - -import com.mojang.brigadier.StringReader; -import com.mojang.brigadier.exceptions.CommandSyntaxException; -import com.mojang.serialization.Codec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import com.simibubi.create.foundation.particle.ICustomParticleDataWithSprite; -import net.minecraft.client.particle.ParticleEngine.SpriteParticleRegistration; -import net.minecraft.core.particles.ParticleOptions; -import net.minecraft.core.particles.ParticleType; -import net.minecraft.network.FriendlyByteBuf; -import net.nuclearteam.createnuclear.CNParticleTypes; - -import java.util.Locale; - -public class IrradiatedParticlesData implements ParticleOptions, ICustomParticleDataWithSprite { - - public static final Codec CODEC = RecordCodecBuilder.create(i -> - i.group( - Codec.INT.fieldOf("t").forGetter(p -> p.t) - ) - .apply(i, IrradiatedParticlesData::new) - ); - - public static final Deserializer DESERIALIZER = - new Deserializer<>() { - @Override - public IrradiatedParticlesData fromCommand(ParticleType particleType, StringReader reader) throws CommandSyntaxException { - return new IrradiatedParticlesData(); - } - - @Override - public IrradiatedParticlesData fromNetwork(ParticleType particleType, FriendlyByteBuf buffer) { - return new IrradiatedParticlesData(); - } - }; - - - int t; - - public IrradiatedParticlesData(int _t) { - t = _t; - } - - public IrradiatedParticlesData() { - this(0); - } - - @Override - public ParticleType getType() { - return CNParticleTypes.IRRADIATED_PARTICLES.get(); - } - - @Override - public void writeToNetwork(FriendlyByteBuf buffer) { - buffer.writeInt(t); - } - - @Override - public String writeToString() { - return String.format(Locale.ROOT, "%s %d", CNParticleTypes.IRRADIATED_PARTICLES.parameter(), t); - } - - @Override - public Deserializer getDeserializer() { - return DESERIALIZER; - } - - @Override - public Codec getCodec(ParticleType type) { - return CODEC; - } - - @Override - public SpriteParticleRegistration getMetaFactory() { - return IrradiatedParticles.Provider::new; - } - - - - - - -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudModel.java b/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudModel.java deleted file mode 100644 index dbc75c7bf..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudModel.java +++ /dev/null @@ -1,213 +0,0 @@ -package net.nuclearteam.createnuclear.content.particles; - -import com.google.common.collect.ImmutableList; -import net.minecraft.util.Mth; -import net.minecraft.world.entity.Entity; -import net.nuclearteam.createnuclear.content.explosion.CNAdvancedEntityModel; -import net.nuclearteam.createnuclear.content.explosion.CNAdvancedModelBox; -import net.nuclearteam.createnuclear.content.explosion.CNBasicModelPart; - -public class NuclearMushroomCloudModel extends CNAdvancedEntityModel { - private final CNAdvancedModelBox mushroom_cloud; - private final CNAdvancedModelBox lightBall; - private final CNAdvancedModelBox lowerCloud; - private final CNAdvancedModelBox lowerCloud_planes; - private final CNAdvancedModelBox cube_r1; - private final CNAdvancedModelBox cube_r2; - private final CNAdvancedModelBox cube_r3; - private final CNAdvancedModelBox cube_r4; - private final CNAdvancedModelBox plume; - private final CNAdvancedModelBox cube_r5; - private final CNAdvancedModelBox cube_r6; - private final CNAdvancedModelBox plumeBlast; - private final CNAdvancedModelBox plumeRing; - private final CNAdvancedModelBox upperCloud; - private final CNAdvancedModelBox upperCloud1; - private final CNAdvancedModelBox upperCloud_planes; - private final CNAdvancedModelBox cube_r7; - private final CNAdvancedModelBox cube_r8; - private final CNAdvancedModelBox cube_r9; - private final CNAdvancedModelBox cube_r10; - private final CNAdvancedModelBox rings; - private final CNAdvancedModelBox upperRing; - private final CNAdvancedModelBox lowerRing; - - public NuclearMushroomCloudModel() { - texWidth = 512; - texHeight = 512; - - mushroom_cloud = new CNAdvancedModelBox(this); - mushroom_cloud.setRotationPoint(0.0F, 24.0F, 0.0F); - - - lightBall = new CNAdvancedModelBox(this); - lightBall.setRotationPoint(0.0F, -19.0F, 0.0F); - mushroom_cloud.addChild(lightBall); - lightBall.setTextureOffset(300, 0).addBox(-16.0F, -16.0F, -16.0F, 32.0F, 32.0F, 32.0F, 0.0F, false); - - lowerCloud = new CNAdvancedModelBox(this); - lowerCloud.setRotationPoint(0.0F, 5.0F, 0.0F); - lightBall.addChild(lowerCloud); - lowerCloud.setTextureOffset(0, 0).addBox(-50.0F, -9.0F, -50.0F, 100.0F, 16.0F, 100.0F, 0.0F, false); - - lowerCloud_planes = new CNAdvancedModelBox(this); - lowerCloud_planes.setRotationPoint(0.0F, 0.0F, 0.0F); - lowerCloud.addChild(lowerCloud_planes); - - - cube_r1 = new CNAdvancedModelBox(this); - cube_r1.setRotationPoint(-16.0F, -20.0F, 16.0F); - lowerCloud_planes.addChild(cube_r1); - setRotateAngle(cube_r1, 0.0F, 0.7854F, 0.0F); - cube_r1.setTextureOffset(142, 342).addBox(-66.0F, -13.0F, 0.0F, 66.0F, 40.0F, 0.0F, 0.0F, true); - - cube_r2 = new CNAdvancedModelBox(this); - cube_r2.setRotationPoint(16.0F, -20.0F, -16.0F); - lowerCloud_planes.addChild(cube_r2); - setRotateAngle(cube_r2, 0.0F, 0.7854F, 0.0F); - cube_r2.setTextureOffset(142, 342).addBox(0.0F, -13.0F, 0.0F, 66.0F, 40.0F, 0.0F, 0.0F, false); - - cube_r3 = new CNAdvancedModelBox(this); - cube_r3.setRotationPoint(16.0F, -20.0F, 16.0F); - lowerCloud_planes.addChild(cube_r3); - setRotateAngle(cube_r3, 0.0F, -0.7854F, 0.0F); - cube_r3.setTextureOffset(142, 342).addBox(0.0F, -13.0F, 0.0F, 66.0F, 40.0F, 0.0F, 0.0F, false); - - cube_r4 = new CNAdvancedModelBox(this); - cube_r4.setRotationPoint(-16.0F, -20.0F, -16.0F); - lowerCloud_planes.addChild(cube_r4); - setRotateAngle(cube_r4, 0.0F, -0.7854F, 0.0F); - cube_r4.setTextureOffset(142, 342).addBox(-66.0F, -13.0F, 0.0F, 66.0F, 40.0F, 0.0F, 0.0F, true); - - plume = new CNAdvancedModelBox(this); - plume.setRotationPoint(0.0F, 9, 0.0F); - lightBall.addChild(plume); - - - cube_r5 = new CNAdvancedModelBox(this); - cube_r5.setRotationPoint(0.0F, -44.8333F, 0.0F); - plume.addChild(cube_r5); - setRotateAngle(cube_r5, 0.0F, -0.7854F, 0.0F); - cube_r5.setTextureOffset(256, 220).addBox(-32.0F, -61.0F, 0.0F, 64.0F, 122.0F, 0.0F, 0.0F, false); - - cube_r6 = new CNAdvancedModelBox(this); - cube_r6.setRotationPoint(0.0F, -44.8333F, 0.0F); - plume.addChild(cube_r6); - setRotateAngle(cube_r6, 0.0F, 0.7854F, 0.0F); - cube_r6.setTextureOffset(256, 220).addBox(-32.0F, -61.0F, 0.0F, 64.0F, 122.0F, 0.0F, 0.0F, false); - - plumeBlast = new CNAdvancedModelBox(this); - plumeBlast.setRotationPoint(0.0F, -80.8333F, 0.0F); - plume.addChild(plumeBlast); - plumeBlast.setTextureOffset(240, 116).addBox(-18.0F, 0.0F, -18.0F, 36.0F, 29.0F, 36.0F, 0.0F, false); - - plumeRing = new CNAdvancedModelBox(this); - plumeRing.setRotationPoint(0.0F, -35.8333F, 0.0F); - plume.addChild(plumeRing); - plumeRing.setTextureOffset(296, 440).addBox(-36.0F, 0.0F, -36.0F, 72.0F, 0.0F, 72.0F, 0.0F, false); - - upperCloud = new CNAdvancedModelBox(this); - upperCloud.setRotationPoint(0.0F, -80.8333F, 0.0F); - plume.addChild(upperCloud); - upperCloud.setTextureOffset(0, 116).addBox(-40.0F, -24.0F, -40.0F, 80.0F, 24.0F, 80.0F, 0.0F, false); - - upperCloud1 = new CNAdvancedModelBox(this); - upperCloud1.setRotationPoint(0.0F, -24.0F, 0.0F); - upperCloud.addChild(upperCloud1); - upperCloud1.setTextureOffset(0, 220).addBox(-32.0F, -15.0F, -32.0F, 64.0F, 15.0F, 64.0F, 0.0F, false); - - upperCloud_planes = new CNAdvancedModelBox(this); - upperCloud_planes.setRotationPoint(0.0F, -12.0F, 0.0F); - upperCloud.addChild(upperCloud_planes); - - - cube_r7 = new CNAdvancedModelBox(this); - cube_r7.setRotationPoint(16.0F, 112.0F, -16.0F); - upperCloud_planes.addChild(cube_r7); - setRotateAngle(cube_r7, 0.0F, 0.7854F, 0.0F); - cube_r7.setTextureOffset(0, 299).addBox(-23.0F, -152.0F, 0.0F, 71.0F, 69.0F, 0.0F, 0.0F, false); - - cube_r8 = new CNAdvancedModelBox(this); - cube_r8.setRotationPoint(16.0F, 112.0F, 16.0F); - upperCloud_planes.addChild(cube_r8); - setRotateAngle(cube_r8, 0.0F, -0.7854F, 0.0F); - cube_r8.setTextureOffset(0, 299).addBox(-23.0F, -152.0F, 0.0F, 71.0F, 69.0F, 0.0F, 0.0F, false); - - cube_r9 = new CNAdvancedModelBox(this); - cube_r9.setRotationPoint(-16.0F, 112.0F, 16.0F); - upperCloud_planes.addChild(cube_r9); - setRotateAngle(cube_r9, 0.0F, 0.7854F, 0.0F); - cube_r9.setTextureOffset(0, 299).addBox(-48.0F, -152.0F, 0.0F, 71.0F, 69.0F, 0.0F, 0.0F, true); - - cube_r10 = new CNAdvancedModelBox(this); - cube_r10.setRotationPoint(-16.0F, 112.0F, -16.0F); - upperCloud_planes.addChild(cube_r10); - setRotateAngle(cube_r10, 0.0F, -0.7854F, 0.0F); - cube_r10.setTextureOffset(0, 299).addBox(-48.0F, -152.0F, 0.0F, 71.0F, 69.0F, 0.0F, 0.0F, true); - - rings = new CNAdvancedModelBox(this); - rings.setRotationPoint(0.0F, -55.0F, 0.0F); - upperCloud.addChild(rings); - - - upperRing = new CNAdvancedModelBox(this); - upperRing.setRotationPoint(0.0F, -4.0F, 0.0F); - rings.addChild(upperRing); - upperRing.setTextureOffset(296, 440).addBox(-36.0F, 0.0F, -36.0F, 72.0F, 0.0F, 72.0F, 0.0F, false); - - lowerRing = new CNAdvancedModelBox(this); - lowerRing.setRotationPoint(0.0F, 4.0F, 0.0F); - rings.addChild(lowerRing); - lowerRing.setTextureOffset(296, 440).addBox(-36.0F, 0.0F, -36.0F, 72.0F, 0.0F, 72.0F, 0.0F, false); - this.updateDefaultPose(); - } - - - @Override - public Iterable parts() { - return ImmutableList.of(mushroom_cloud); - } - - @Override - public Iterable getAllParts() { - return ImmutableList.of(rings, mushroom_cloud, lowerCloud, lowerCloud_planes, lightBall, cube_r1, cube_r2, cube_r3, cube_r4, cube_r5, cube_r6, cube_r7, cube_r8, cube_r9, cube_r10, plume, plumeBlast, plumeRing, upperCloud, upperCloud_planes, upperCloud1, upperRing, lowerRing); - } - - - @Override - public void setupAnim(Entity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { - this.resetToDefaultPose(); - } - - public void hideFireball(boolean fireball) { - this.plume.showModel = fireball; - this.lowerCloud.showModel = fireball; - this.upperCloud.showModel = fireball; - } - - public void animateParticle(float age, float life, float partialTicks) { - this.resetToDefaultPose(); - float lerpedAge = age + partialTicks; - float baseExpand1 = life + life * life; - float upperExpand = offset(life, 0.3F, 0.4F, 1.5F); - float plumeRingExpand = offset(life, 0.0F, 0.0F, 0.5F) * 45; - float lowerRingExpand = offset(life, 0.0F, 0.1F, 0.65F) * 20; - float upperRingExpand = offset(life, 0.0F, 0.2F, 0.65F) * 15; - this.plume.scaleChildren = true; - this.upperCloud.scaleChildren = true; - this.lowerCloud.scaleChildren = true; - this.plume.setScale(1, life * 1.5F, 1); - this.upperCloud.setScale(upperExpand, 1, upperExpand); - this.plumeRing.setScale(plumeRingExpand, 1, plumeRingExpand); - this.lowerRing.setScale(lowerRingExpand, 1, lowerRingExpand); - this.upperRing.setScale(upperRingExpand, 1, upperRingExpand); - this.lowerCloud.setScale(baseExpand1, baseExpand1, baseExpand1); - this.plumeRing.rotateAngleY += lerpedAge * 0.1; - this.lowerRing.rotateAngleY -= lerpedAge * 0.2; - this.upperRing.rotateAngleY += lerpedAge * 0.1; - } - - public float offset(float life, float forwards, float min, float max) { - return Mth.clamp(life + forwards, min, max); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudParticle.java b/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudParticle.java deleted file mode 100644 index 5a0479823..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/particles/NuclearMushroomCloudParticle.java +++ /dev/null @@ -1,171 +0,0 @@ -package net.nuclearteam.createnuclear.content.particles; - -import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.compat.alexscave.AlexscaveCompat; -import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.blaze3d.vertex.VertexConsumer; -import net.minecraft.client.Camera; -import net.minecraft.client.Minecraft; -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.client.particle.Particle; -import net.minecraft.client.particle.ParticleProvider; -import net.minecraft.client.particle.ParticleRenderType; -import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.texture.OverlayTexture; -import net.minecraft.core.particles.SimpleParticleType; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.util.Mth; -import net.minecraft.world.phys.Vec3; -import net.nuclearteam.createnuclear.compat.Mods; -import net.nuclearteam.createnuclear.content.explosion.CNNuclearExplosionSound; -import net.nuclearteam.createnuclear.foundation.utility.Maths; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -public class NuclearMushroomCloudParticle extends Particle { - - private static final ResourceLocation TEXTURE = CreateNuclear.asResource("textures/particle/nuclear_mushroom_cloud.png"); - private static final ResourceLocation TEXTURE_GLOW = CreateNuclear.asResource("textures/particle/nuclear_mushroom_cloud_glow.png"); - private static final ResourceLocation TEXTURE_PINK = CreateNuclear.asResource("textures/particle/nuclear_mushroom_cloud_pink.png"); - private static final ResourceLocation TEXTURE_PINK_GLOW = CreateNuclear.asResource("textures/particle/nuclear_mushroom_cloud_pink_glow.png"); - private static final NuclearMushroomCloudModel MODEL = new NuclearMushroomCloudModel(); - private static final int BALL_FOR = 10; - private static final int GLOW_FOR = 20; - private static final int FADE_SPEED = 10; - private final float scale; - - private boolean playedRinging; - private boolean playedExplosion; - private boolean playedRumble; - - private final boolean pink; - - private Object alexscaveHandler; - - protected NuclearMushroomCloudParticle(ClientLevel level, double x, double y, double z, float scale, boolean pink) { - super(level, x, y, z); - this.gravity = 0.0F; - this.lifetime = (int) Math.ceil(133.33F * scale); - this.scale = scale + 0.2F; - this.setSize(3.0F, 3.0F); - this.pink = pink; - - if (Mods.ALEXS_CAVE.isLoaded()) { - this.alexscaveHandler = new AlexscaveCompat(); - } - } - - public boolean shouldCull() { - return false; - } - - public void tick() { - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - ((AlexscaveCompat)alexscaveHandler).NukeParam(); - } - else { - CNClientProxy.renderNukeSkyDarkFor = 70; - CNClientProxy.muteNonNukeSoundsFor = 50; - } - boolean large = this.scale > 2.0F; - if(age > BALL_FOR / 2 + 5){ - if(!playedExplosion){ - playedExplosion = true; - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - CreateNuclear.LOGGER.info("EXPLOSIOOOOOON, (With Alex's Cave)"); - SoundEvent[] nuclear_explosions = ((AlexscaveCompat)alexscaveHandler).GetACSounds(); - playSound(large ? nuclear_explosions[0] : nuclear_explosions[1], lifetime - 20, lifetime, 0.2F, false); - } else { - CreateNuclear.LOGGER.info("EXPLOSIOOOOOON, (WITHOUT Alex's Cave)"); - playSound(CNSoundEvents.NUCLEAR_EXPLOSION_MAIN.getMainEvent(), lifetime - 20, lifetime, 0.2F, false); - } - } - } - if (age < BALL_FOR) { - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - if (!playedRinging && ((AlexscaveCompat)alexscaveHandler).GetACConfig()) { - playedRinging = true; - playSound(((AlexscaveCompat)alexscaveHandler).GetACSounds()[2], 100, 50, 0.05F, true); - } - ((AlexscaveCompat)alexscaveHandler).UpdateACProxy(); - } else { - if (!playedRinging && CNConfigs.client().nuclearBombFlash.get()) { - playedRinging = true; - // ringing.ogg lasts 8.91s = 178 ticks. Stopping at 100 ticks cut it mid-file, - // so the tinnitus now runs to the end of the asset and fades over its last 3s. - // Not looping: the file has no seamless loop point, and duration never exceeds it. - playSound(CNSoundEvents.NUCLEAR_EXPLOSION_RINGING.getMainEvent(), 178, 118, 0.05F, false); - // playSound(CNSoundEvents.NUCLEAR_EXPLOSION_SHOCKWAVE.getMainEvent(), 100, 50, 0.05F, true); - } - CNClientProxy.renderNukeFlashFor = 16; - } - } else if (age < lifetime - FADE_SPEED) { - float life = (float) (Math.log(1 + (age - BALL_FOR) / (float) (lifetime - BALL_FOR))) * 2F; - float explosionSpread = (12 * life + 4F) * scale; - for (int i = 0; i < (1 + random.nextInt(2)) * scale; i++) { - Vec3 from = new Vec3(level.random.nextFloat() - 0.5F, level.random.nextFloat() - 0.5F, level.random.nextFloat() - 0.5F).scale(scale * 1.4F).add(this.x, this.y, this.z); - Vec3 away = new Vec3(level.random.nextFloat() - 0.5F, level.random.nextFloat() - 0.5F, level.random.nextFloat() - 0.5F).scale(2.34F); - this.level.addParticle(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD_SMOKE.get(), from.x, from.y, from.z, away.x, away.y, away.z); - } - for (int j = 0; j < scale * scale; j++) { - Vec3 explosionBase = new Vec3((level.random.nextFloat() - 0.5F) * explosionSpread, (-0.6F + level.random.nextFloat() * 0.5F) * explosionSpread * 0.1F, (level.random.nextFloat() - 0.5F) * explosionSpread).add(this.x, this.y, this.z); - this.level.addParticle(CNParticleRegistry.NUCLEAR_MUSHROOM_CLOUD_EXPLOSION.get(), explosionBase.x, explosionBase.y, explosionBase.z, 0, 0, 0); - } - if(age > BALL_FOR){ - if(!playedRumble){ - playedRumble = true; - - if (Mods.ALEXS_CAVE.isLoaded() && alexscaveHandler != null) { - playSound(((AlexscaveCompat)alexscaveHandler).GetACSounds()[3], lifetime + 100, lifetime, 0.1F, true); - } else { - playSound(CNSoundEvents.NUCLEAR_EXPLOSION_RUMBLE_2.getMainEvent(), lifetime + 100, lifetime, 0.1F, true); - - } - } - } - } - super.tick(); - } - - private void playSound(SoundEvent soundEvent, int duration, int fadesAt, float fadeInBy, boolean looping){ - Minecraft.getInstance().getSoundManager().queueTickingSound(new CNNuclearExplosionSound(soundEvent, this.x, this.y, this.z, duration, fadesAt, fadeInBy, looping)); - } - - public void render(VertexConsumer vertexConsumer, Camera camera, float partialTick) { - Vec3 vec3 = camera.getPosition(); - float f = (float) (Mth.lerp((double) partialTick, this.xo, this.x) - vec3.x()); - float f1 = (float) (Mth.lerp((double) partialTick, this.yo, this.y) - vec3.y()); - float f2 = (float) (Mth.lerp((double) partialTick, this.zo, this.z) - vec3.z()); - PoseStack posestack = new PoseStack(); - posestack.pushPose(); - posestack.translate(f, f1 - 0.5F, f2); - posestack.scale(-scale, -scale, scale); - MultiBufferSource.BufferSource multibuffersource$buffersource = Minecraft.getInstance().renderBuffers().bufferSource(); - MODEL.hideFireball(age >= BALL_FOR); - float life = (float) (Math.log(1 + (age - BALL_FOR + partialTick) / (lifetime - BALL_FOR))) * 2F; - float glowLife = life < 1F ? 1F - life : 0; - int left = lifetime - age; - float alpha = left <= FADE_SPEED ? left / (float) FADE_SPEED : 1.0F; - MODEL.animateParticle(age, Maths.smin(life, 1.0F, 0.5F), partialTick); - VertexConsumer baseConsumer = multibuffersource$buffersource.getBuffer(RenderType.entityTranslucent(pink ? TEXTURE_PINK : TEXTURE)); - MODEL.renderToBuffer(posestack, baseConsumer, getLightColor(partialTick), OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, alpha); - multibuffersource$buffersource.endBatch(); - posestack.popPose(); - } - - @Override - public ParticleRenderType getRenderType() { - return ParticleRenderType.CUSTOM; - } - - public static class Factory implements ParticleProvider { - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - if (xSpeed == 0.0) { - xSpeed = 1.0F; - } - return new NuclearMushroomCloudParticle(worldIn, x, y, z, (float) Math.max(0.5F, xSpeed), ySpeed >= 1.0F); - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/particles/SmallNuclearExplosionParticle.java b/src/main/java/net/nuclearteam/createnuclear/content/particles/SmallNuclearExplosionParticle.java deleted file mode 100644 index 9318a3344..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/particles/SmallNuclearExplosionParticle.java +++ /dev/null @@ -1,280 +0,0 @@ -package net.nuclearteam.createnuclear.content.particles; - -import net.minecraft.client.multiplayer.ClientLevel; -import net.minecraft.client.particle.*; -import net.minecraft.core.particles.SimpleParticleType; -import net.minecraft.util.FastColor; - -public class SmallNuclearExplosionParticle extends TextureSheetParticle { - - private final SpriteSet sprites; - private boolean hasFadeColor = false; - private float fadeR; - private float fadeG; - private float fadeB; - protected SmallNuclearExplosionParticle(ClientLevel world, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed, SpriteSet sprites, boolean shortLifespan, int color1) { - super(world, x, y, z, xSpeed, ySpeed, zSpeed); - this.xd = xSpeed; - this.yd = ySpeed; - this.zd = zSpeed; - this.setSize(0.5F, 0.5F); - this.quadSize = (shortLifespan ? 1 : 0.8F) + world.random.nextFloat() * 0.3F; - this.lifetime = shortLifespan ? 5 + world.random.nextInt(3) : 15 + world.random.nextInt(10); - this.friction = 0.96F; - float randCol = world.random.nextFloat() * 0.05F; - this.sprites = sprites; - this.setColor(Math.min(FastColor.ARGB32.red(color1) / 255F + randCol, 1), Math.min(1F, FastColor.ARGB32.green(color1) / 255F + randCol), Math.min(1F, FastColor.ARGB32.blue(color1) / 255F + randCol)); - } - - public void setFadeColor(int i){ - hasFadeColor = true; - this.fadeR = (float) ((i & 16711680) >> 16) / 255.0F; - this.fadeG = (float) ((i & '\uff00') >> 8) / 255.0F; - this.fadeB = (float) ((i & 255) >> 0) / 255.0F; - } - - public void tick() { - this.xo = this.x; - this.yo = this.y; - this.zo = this.z; - this.setSpriteFromAge(this.sprites); - if (this.age++ >= this.lifetime) { - this.remove(); - } else { - if(hasFadeColor){ - this.rCol += (fadeR - this.rCol) * 0.2F; - this.gCol += (fadeG - this.gCol) * 0.2F; - this.bCol += (fadeB - this.bCol) * 0.2F; - }else{ - this.rCol = this.rCol * 0.95F; - this.gCol = this.gCol * 0.95F; - this.bCol = this.bCol * 0.95F; - } - this.move(this.xd, this.yd, this.zd); - this.xd *= (double) this.friction; - this.yd *= (double) this.friction; - this.zd *= (double) this.friction; - } - } - - @Override - public ParticleRenderType getRenderType() { - return ParticleRenderType.PARTICLE_SHEET_LIT; - } - - public float getQuadSize(float scaleFactor) { - return super.getQuadSize(scaleFactor); - } - - public int getLightColor(float partialTicks) { - return 240; - } - - public static class NukeFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public NukeFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, false, 0XFFB300); - particle.setSpriteFromAge(spriteSet); - return particle; - } - } - - public static class MineFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public MineFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XFFB300); - particle.setSpriteFromAge(spriteSet); - return particle; - } - } - - public static class UnderzealotFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public UnderzealotFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, false, 0); - particle.setSpriteFromAge(spriteSet); - return particle; - } - } - - public static class RaygunFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public RaygunFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XEEEEEE); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 5 + worldIn.random.nextInt(3); - particle.scale(0.6F + worldIn.random.nextFloat() * 0.3F); - particle.setFadeColor(0X40EE40); - return particle; - } - } - - public static class BlueRaygunFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public BlueRaygunFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XEEEEEE); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 5 + worldIn.random.nextInt(5); - particle.scale(0.5F + worldIn.random.nextFloat() * 0.5F); - particle.setFadeColor(0X40EEDA); - return particle; - } - } - - public static class TremorzillaFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public TremorzillaFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XEEEEEE); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 9 + worldIn.random.nextInt(3); - particle.scale(1.0F + worldIn.random.nextFloat() * 0.9F); - particle.setFadeColor(0X9BFF3D); - return particle; - } - } - - public static class TremorzillaRetroFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public TremorzillaRetroFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XEEEEEE); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 9 + worldIn.random.nextInt(3); - particle.scale(1.0F + worldIn.random.nextFloat() * 0.9F); - particle.setFadeColor(0XE06EFF); - return particle; - } - } - - - public static class TremorzillaTectonicFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public TremorzillaTectonicFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XEEEEEE); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 9 + worldIn.random.nextInt(3); - particle.scale(1.0F + worldIn.random.nextFloat() * 0.9F); - particle.setFadeColor(0XFFD631); - return particle; - } - } - - public static class AmberFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public AmberFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, false, 0XFFDA1E); - particle.setSpriteFromAge(spriteSet); - particle.scale(0.8F); - return particle; - } - } - - public static class TotemFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public TotemFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XFF0000); - particle.setSpriteFromAge(spriteSet); - particle.lifetime = 5 + worldIn.random.nextInt(3); - particle.scale(1.2F + worldIn.random.nextFloat() * 0.3F); - particle.setFadeColor(0); - return particle; - } - } - - public static class PurpleWitchFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public PurpleWitchFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XFF69FF); - particle.setSpriteFromAge(spriteSet); - particle.scale(0.8F); - particle.setFadeColor(0XFFFFFF); - return particle; - } - } - - public static class ConversionCrucibleFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public ConversionCrucibleFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, 0.0D, 0.0D, 0.0D, spriteSet, true, FastColor.ARGB32.color(255, (int)(255F * xSpeed), (int)(255F * ySpeed), (int)(255F * zSpeed))); - particle.setSpriteFromAge(spriteSet); - particle.scale(0.8F); - particle.setFadeColor(0XFFFFFF); - return particle; - } - } - - public static class FrostmintFactory implements ParticleProvider { - private final SpriteSet spriteSet; - - public FrostmintFactory(SpriteSet spriteSet) { - this.spriteSet = spriteSet; - } - - public Particle createParticle(SimpleParticleType typeIn, ClientLevel worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { - SmallNuclearExplosionParticle particle = new SmallNuclearExplosionParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, spriteSet, true, 0XFFFFFF); - particle.quadSize *= 1.6F; - particle.setSpriteFromAge(spriteSet); - particle.setFadeColor(0XE5F9FA); - return particle; - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/CNRadiationValues.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/CNRadiationValues.java deleted file mode 100644 index 1f7433abe..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/CNRadiationValues.java +++ /dev/null @@ -1,19 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation; - -import com.simibubi.create.AllItems; -import net.nuclearteam.createnuclear.api.radiation.RadiationRegistry; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNBiomes; - -public class CNRadiationValues { - public static void register() { - RadiationRegistry.register() - .item(AllItems.CRUSHED_URANIUM.asItem()) - .value(.5D) - .build(); - - RadiationRegistry.register() - .biome(CNBiomes.Irradiated.PLAIN) - .value(25D) - .build(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationBucketItem.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationBucketItem.java deleted file mode 100644 index 38b13da68..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationBucketItem.java +++ /dev/null @@ -1,39 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.BucketItem; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.material.Fluid; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.fluids.capability.wrappers.FluidBucketWrapper; -import net.nuclearteam.createnuclear.api.radiation.IRadiationSource; -import org.jetbrains.annotations.Nullable; - -import java.util.function.Supplier; - -public class RadiationBucketItem extends BucketItem implements IRadiationSource { - private final double radiation; - - public RadiationBucketItem(Supplier supplier, Properties builder, double radiation) { - super(supplier, builder); - this.radiation = radiation; - } - - /** - * Forge's {@link BucketItem#initCapabilities} only provides the {@link FluidBucketWrapper} - * fluid-handler capability when {@code getClass() == BucketItem.class}. Because this is a - * subclass, it would otherwise return no fluid capability — making the bucket impossible to - * empty into fluid handlers (e.g. Create fluid tanks). Re-declare it here to restore that. - */ - @Override - public ICapabilityProvider initCapabilities(ItemStack stack, @Nullable CompoundTag nbt) { - return new FluidBucketWrapper(stack); - } - - @Override - public double getRadiation(ItemStack stack, LivingEntity entity) { - return this.radiation; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffect.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffect.java deleted file mode 100644 index 56e318da2..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffect.java +++ /dev/null @@ -1,71 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation; - -import net.minecraft.world.effect.MobEffectCategory; -import net.minecraft.world.entity.LivingEntity; - -import net.nuclearteam.createnuclear.CNEffects; -import net.nuclearteam.createnuclear.content.effects.VicinityEffect; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; -import net.minecraft.world.entity.ai.attributes.Attributes; -import net.minecraft.world.entity.ai.attributes.AttributeModifier; -import net.nuclearteam.createnuclear.foundation.damageTypes.CNDamageSources; - -public class RadiationEffect extends VicinityEffect { - private static final int CONTAGION_DURATION_TICKS = 300; - - /** - * Constructs the RadiationEffect with harmful category and color. - * Also applies attribute modifiers to reduce speed, attack damage, and attack speed. - */ - public RadiationEffect() { - super(MobEffectCategory.HARMFUL, 15453236, - amplifier -> 10, - RadiationCapability::canBeIrradiated, - timer -> {}); // Custom color (hex value) - - // Reduces movement speed by 20% - this.addAttributeModifier(Attributes.MOVEMENT_SPEED, - "91AEAA56-376B-4498-935B-2F7F68070635", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); - - // Reduces attack damage by 20% - this.addAttributeModifier(Attributes.ATTACK_DAMAGE, - "648D7064-6A60-4F59-8ABE-C2C23A6DD7A9", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); - - // Reduces attack speed by 20% - this.addAttributeModifier(Attributes.ATTACK_SPEED, - "55FCED67-E92A-486E-9800-B47F202C4386", -0.2D, AttributeModifier.Operation.MULTIPLY_TOTAL); - } - - /** - * Determines if the effect should be applied this tick. - * Returning true causes the effect to apply every tick. - * - * @param duration The remaining duration of the effect. - * @param amplifier The strength (level) of the effect. - * @return true if the effect should apply on this tick. - */ - @Override - public boolean isDurationEffectTick(int duration, int amplifier) { - return true; - } - - @Override - protected void onContaminate(LivingEntity nearby) { - RadiationCapability.applyContagion(nearby, 15D, CONTAGION_DURATION_TICKS); - } - - @Override - public void applyEffectTick(LivingEntity entity, int amplifier) { - super.applyEffectTick(entity, amplifier); - - double resistance = RadiationCapability.getRadiationResistance(entity); - - float damage = (float) ((1 << amplifier) * (1.0 - resistance)); - - if (damage <= 0.0f) { - return; - } - - entity.hurt(CNDamageSources.radiation(entity.level()), damage); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffectHandler.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffectHandler.java deleted file mode 100644 index 8a32a83f3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationEffectHandler.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation; - -import com.simibubi.create.api.effect.OpenPipeEffectHandler; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.level.Level; -import net.minecraft.world.phys.AABB; -import net.minecraftforge.fluids.FluidStack; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; - -import java.util.List; - -public class RadiationEffectHandler implements OpenPipeEffectHandler { - private static final double PIPE_LEAK_DOSE = 40.0D; - - @Override - public void apply(Level level, AABB area, FluidStack fluid) { - if (level.getGameTime() % 5 != 0) return; - - List entities = level.getEntitiesOfClass(LivingEntity.class, area, LivingEntity::isAffectedByPotions); - for (LivingEntity entity : entities) { - if (!RadiationCapability.canBeIrradiated(entity)) continue; - RadiationCapability.applyContagion(entity, PIPE_LEAK_DOSE, 20); - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationItem.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationItem.java deleted file mode 100644 index 5e02a0fb3..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/RadiationItem.java +++ /dev/null @@ -1,22 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation; - -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.nuclearteam.createnuclear.api.radiation.IRadiationSource; - -public class RadiationItem extends Item implements IRadiationSource { - - private final double radiation; - - public RadiationItem(Item.Properties settings, double radiation) { - super(settings); - this.radiation = radiation; - } - - @Override - public double getRadiation(ItemStack stack, LivingEntity entity) { - return this.radiation * stack.getCount(); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/IRadiationCapability.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/IRadiationCapability.java deleted file mode 100644 index 3b1f550d2..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/IRadiationCapability.java +++ /dev/null @@ -1,20 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation.capability; - -import net.minecraft.resources.ResourceLocation; - -public interface IRadiationCapability { - double getRadiation(); - void setRadiation(double value); - - long getInventoryHash(); - void setInventoryHash(long hash); - - ResourceLocation getLastBiomeLocation(); - void setLastBiomeLocation(ResourceLocation location); - - double getContagionDose(); - void setContagionDose(double dose); - - int getContagionTicks(); - void setContagionTicks(int ticks); -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java deleted file mode 100644 index d57e3cc5d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationCapability.java +++ /dev/null @@ -1,246 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation.capability; - -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.Mth; -import net.minecraft.world.effect.MobEffect; -import net.minecraft.world.effect.MobEffectInstance; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.ai.attributes.AttributeInstance; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.biome.Biome; -import net.minecraftforge.event.AttachCapabilitiesEvent; -import net.minecraftforge.event.entity.living.LivingEvent.LivingTickEvent; -import net.nuclearteam.createnuclear.CNAttributes; -import net.nuclearteam.createnuclear.CNEffects; -import net.nuclearteam.createnuclear.CNTags; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.radiation.IRadiationSource; -import net.nuclearteam.createnuclear.api.radiation.RadiationRegistry; -import net.nuclearteam.createnuclear.foundation.utility.ConfigValueResolver; -import net.nuclearteam.createnuclear.foundation.utility.InventoryHashUtil; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -import java.util.HashSet; -import java.util.List; -import java.util.Objects; -import java.util.Set; - -public class RadiationCapability implements IRadiationCapability { - private double radiation; - private long inventoryHash; - private ResourceLocation lastBiomeLocation; - private double contagionDose; - private int contagionTicks; - - @Override - public double getRadiation() { - return this.radiation; - } - - @Override - public void setRadiation(double value) { - this.radiation = value; - } - - @Override - public long getInventoryHash() { - return this.inventoryHash; - } - - @Override - public void setInventoryHash(long hash) { - this.inventoryHash = hash; - } - - @Override - public ResourceLocation getLastBiomeLocation() { - return this.lastBiomeLocation; - } - - @Override - public void setLastBiomeLocation(ResourceLocation location) { - this.lastBiomeLocation = location; - } - - @Override - public double getContagionDose() { - return this.contagionDose; - } - - @Override - public void setContagionDose(double dose) { - this.contagionDose = dose; - } - - @Override - public int getContagionTicks() { - return this.contagionTicks; - } - - @Override - public void setContagionTicks(int ticks) { - this.contagionTicks = ticks; - } - - public static void attach(AttachCapabilitiesEvent event) { - if (event.getObject() instanceof LivingEntity) { - event.addCapability(CreateNuclear.asResource("irradiated_resistance"), new RadiationProvider()); - } - } - - public static void onLivingEntityTick(LivingTickEvent event) { - tickRadiation(event.getEntity()); - } - - public static void applyContagion(LivingEntity entity, double doseValue, int durationTicks) { - entity.getCapability(RadiationProvider.CAP).ifPresent(cap -> { - cap.setContagionDose(doseValue); - cap.setContagionTicks(durationTicks); - }); - } - - public static void tickRadiation(LivingEntity entity) { - Level level = entity.level(); - if (level.isClientSide) return; - - entity.getCapability(RadiationProvider.CAP).ifPresent(cap -> { - if (entity instanceof Player player) { - long newHash = InventoryHashUtil.compute(player); - if (newHash != cap.getInventoryHash()) { - cap.setInventoryHash(newHash); - cap.setRadiation(Math.max(0, computeItemRadiation(player))); - } - } else { - cap.setRadiation(Math.max(0, computeItemRadiation(entity))); - } - - ResourceKey biomeKey = level.getBiome(entity.blockPosition()).unwrapKey().orElse(null); - ResourceLocation biomeLoc = biomeKey != null ? biomeKey.location() : null; - if (!Objects.equals(biomeLoc, cap.getLastBiomeLocation())) { - cap.setLastBiomeLocation(biomeLoc); - } - - if (!canBeIrradiated(entity)) return; - - if (cap.getContagionTicks() > 0) { - cap.setContagionTicks(cap.getContagionTicks() - 1); - } - - double contagionDose = cap.getContagionTicks() > 0 ? cap.getContagionDose() : 0; - - double totalRaw = cap.getRadiation() + getRawBiomeRadiation(biomeKey) + contagionDose; - double resistance = getRadiationResistance(entity); - double totalRadiation = totalRaw * (1.0 - resistance); - - applyEffects(entity, totalRadiation); - }); - } - - private static double computeItemRadiation(Player player) { - double radiation = 0; - for (ItemStack stack : player.getInventory().items) { - if (stack.getItem() instanceof IRadiationSource source) - radiation += source.getRadiation(stack, player); - radiation += RadiationRegistry.getRadiation(stack, player); - } - for (ItemStack stack : player.getInventory().offhand) { - if (stack.getItem() instanceof IRadiationSource source) - radiation += source.getRadiation(stack, player); - radiation += RadiationRegistry.getRadiation(stack, player); - } - return radiation; - } - - private static double getStackRadiation(ItemStack stack, LivingEntity entity) { - double radiation = 0; - if (stack.getItem() instanceof IRadiationSource source) radiation += source.getRadiation(stack, entity); - radiation += RadiationRegistry.getRadiation(stack, entity); - - return radiation; - } - - private static double computeItemRadiation(LivingEntity entity) { - double radiation = 0; - for (ItemStack stack : entity.getArmorSlots()) { - radiation += getStackRadiation(stack, entity); - } - radiation += getStackRadiation(entity.getMainHandItem(), entity); - radiation += getStackRadiation(entity.getOffhandItem(), entity); - return radiation; - } - - private static double getRawBiomeRadiation(ResourceKey biomeKey) { - if (biomeKey == null) return 0; - return RadiationRegistry.get(biomeKey); - } - - /** - * Single source of truth for radiation eligibility, shared by every application path - * (item/biome tick, vicinity effect, open-pipe leak). Covers eligibility only — - * the continuous attenuation by resistance lives in {@link #applyEffects} / the effect tick. - */ - public static boolean canBeIrradiated(LivingEntity entity) { - if (entity.isSpectator()) return false; - if (entity.getType().is(CNTags.CNEntityTags.IRRADIATED_IMMUNE.tag)) return false; - if (!CNConfigs.server().radiation.enabledItemRadiation.get()) return false; - if (getEntityBlacklist().contains(entity.getType())) return false; - return getRadiationResistance(entity) < 1.0; - } - - // Cached, parsed entity blacklist. Rebuilt only when the underlying config list instance - // changes (ForgeConfigSpec returns a fresh list on reload), so no per-tick parsing. - private static List cachedBlacklistSource; - private static Set> cachedBlacklist = Set.of(); - - private static Set> getEntityBlacklist() { - List source = CNConfigs.server().radiation.configuredLists.getEntityBlackList(); - if (source != cachedBlacklistSource) { - Set> resolved = new HashSet<>(); - ConfigValueResolver.loadValuesInSet(source, resolved, - entry -> BuiltInRegistries.ENTITY_TYPE.get(ResourceLocation.tryParse(entry))); - cachedBlacklist = resolved; - cachedBlacklistSource = source; - } - return cachedBlacklist; - } - - public static double getRadiationResistance(LivingEntity entity) { - double resistance = 0d; - - AttributeInstance attribute = entity.getAttribute(CNAttributes.IRRADIATED_RESISTANCE.get()); - - if (attribute != null) resistance += attribute.getValue(); - - return Mth.clamp(resistance, 0.0, 1.0); - } - - private static void applyEffects(LivingEntity entity, double radiation) { - final double radiation_desactive = 0; - MobEffect radiationEffect = CNEffects.RADIATION.get(); - - if (radiation <= radiation_desactive) return; - - int amp; - if (radiation < CNConfigs.server().radiation.radiationLevel1.get()) amp = CNConfigs.server().radiation.amplifierLevel0.get(); - else if (radiation < CNConfigs.server().radiation.radiationLevel2.get()) amp = CNConfigs.server().radiation.amplifierLevel1.get(); - else if (radiation < CNConfigs.server().radiation.radiationLevel3.get()) amp = CNConfigs.server().radiation.amplifierLevel2.get(); - else amp = CNConfigs.server().radiation.amplifierLevel2.get(); - - MobEffectInstance current = entity.getEffect(radiationEffect); - - if (current != null && current.getAmplifier() != amp) { - entity.removeEffect(radiationEffect); - current = null; - } - - if (current == null || current.getDuration() <= 40) { - entity.addEffect(new MobEffectInstance(CNEffects.RADIATION.get(), 100, amp, true, true)); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationProvider.java b/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationProvider.java deleted file mode 100644 index a9fea11de..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/radiation/capability/RadiationProvider.java +++ /dev/null @@ -1,43 +0,0 @@ -package net.nuclearteam.createnuclear.content.radiation.capability; - -import net.minecraft.core.Direction; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.CapabilityManager; -import net.minecraftforge.common.capabilities.CapabilityToken; -import net.minecraftforge.common.capabilities.ICapabilitySerializable; -import net.minecraftforge.common.util.LazyOptional; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public class RadiationProvider implements ICapabilitySerializable { - public static final Capability CAP = CapabilityManager.get(new CapabilityToken<>() {}); - private final IRadiationCapability instance = new RadiationCapability(); - private final LazyOptional optional = LazyOptional.of(() -> instance); - - @Override - public @NotNull LazyOptional getCapability(@NotNull Capability cap, @Nullable Direction side) { - return cap == CAP ? optional.cast() : LazyOptional.empty(); - } - - @Override - public CompoundTag serializeNBT() { - CompoundTag tag = new CompoundTag(); - tag.putDouble("radiation", instance.getRadiation()); - tag.putLong("hash", instance.getInventoryHash()); - if (instance.getLastBiomeLocation() != null) { - tag.putString("lastBiome", instance.getLastBiomeLocation().toString()); - } - return tag; - } - - @Override - public void deserializeNBT(CompoundTag nbt) { - instance.setRadiation(nbt.getDouble("radiation")); - instance.setInventoryHash(nbt.getLong("hash")); - instance.setLastBiomeLocation(nbt.contains("lastBiome") - ? ResourceLocation.tryParse(nbt.getString("lastBiome")) - : null); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/AbstractReactorStatDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/AbstractReactorStatDisplaySource.java deleted file mode 100644 index b33d9b4f7..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/AbstractReactorStatDisplaySource.java +++ /dev/null @@ -1,54 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import com.simibubi.create.content.redstone.displayLink.source.NumericSingleLineDisplaySource; -import com.simibubi.create.content.redstone.displayLink.target.DisplayTargetStats; -import com.simibubi.create.foundation.gui.ModularGuiLineBuilder; -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -public abstract class AbstractReactorStatDisplaySource extends NumericSingleLineDisplaySource { - protected abstract String getLabelKey(); - protected abstract int getMax(); - protected abstract int computeValue(ReactorControllerBlockEntity controller, DisplayLinkContext context); - protected abstract ChatFormatting getColor(int value, ReactorControllerBlockEntity controller); - protected MutableComponent getUnitSuffix() { return null; } - - @Override - protected MutableComponent provideLine(DisplayLinkContext context, DisplayTargetStats stats) { - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(context.level(), context.getSourcePos()); - if (controller == null || controller.isRemoved()) return ZERO.copy(); - - MutableComponent label = CreateNuclearLang.translateDirect(getLabelKey()).append(" "); - int mode = context.sourceConfig().getInt("display_mode"); - int value = computeValue(controller, context); - int max = getMax(); - ChatFormatting color = getColor(value, controller); - - return label.append(switch (mode) { - case 1 -> Component.literal((value * 100 / max) + "%").withStyle(color); - case 2 -> ReactorGaugeRenderer.drawGauge(value, max, color, 6); - default -> { - MutableComponent base = Component.literal(String.valueOf(value)); - MutableComponent unit = getUnitSuffix(); - yield (unit != null ? base.append(unit) : base).withStyle(color); - } - }); - } - - @Override - @OnlyIn(Dist.CLIENT) - public void initConfigurationWidgets(DisplayLinkContext context, ModularGuiLineBuilder builder, boolean isFirstLine) { - if (isFirstLine) return; - builder.addSelectionScrollInput(0, 100, (input, l) -> input - .forOptions(CreateNuclearLang.translatedOptions("display_source.reactor.mode", "value", "percent", "gauge")), "display_mode"); - } - - @Override protected boolean allowsLabeling(DisplayLinkContext context) { return true; } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/CoolerDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/CoolerDisplaySource.java deleted file mode 100644 index ce7934b55..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/CoolerDisplaySource.java +++ /dev/null @@ -1,46 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import net.minecraft.ChatFormatting; -import net.minecraft.world.item.Item; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; - -import java.util.Map; - -public class CoolerDisplaySource extends AbstractReactorStatDisplaySource { - - - @Override - protected String getLabelKey() { - return "display_source.reactor.cooler"; - } - - @Override - protected int getMax() { - return ReactorDisplayConstants.MAX_COOLER; - } - - @Override - protected ChatFormatting getColor(int value, ReactorControllerBlockEntity controller) { - return ChatFormatting.AQUA; - } - - @Override - protected int computeValue(ReactorControllerBlockEntity controller, DisplayLinkContext context) { - int cooler = 0; - if (controller.getDisplayState() != null && controller.getDisplayState().items() != null) { - for (Map.Entry entry : controller.getDisplayState().items().entrySet()) { - if (RodType.TypeRodPredicate.isCooled(entry.getKey().getDefaultInstance(), context.level())) { - cooler += entry.getValue(); - } - } - } - return cooler; - } - - @Override - protected String getTranslationKey() { - return "cooler"; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/FuelDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/FuelDisplaySource.java deleted file mode 100644 index 56a8dc276..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/FuelDisplaySource.java +++ /dev/null @@ -1,45 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import net.minecraft.ChatFormatting; -import net.minecraft.world.item.Item; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; - -import java.util.Map; - -public class FuelDisplaySource extends AbstractReactorStatDisplaySource { - - @Override - protected String getLabelKey() { - return "display_source.reactor.fuel"; - } - - @Override - protected int getMax() { - return ReactorDisplayConstants.MAX_FUEL; - } - - @Override - protected ChatFormatting getColor(int value, ReactorControllerBlockEntity controller) { - return ChatFormatting.GREEN; - } - - @Override - protected int computeValue(ReactorControllerBlockEntity controller, DisplayLinkContext context) { - int fuel = 0; - if (controller.getDisplayState() != null && controller.getDisplayState().items() != null) { - for (Map.Entry entry : controller.getDisplayState().items().entrySet()) { - if (TypeRodPredicate.isFuel(entry.getKey().getDefaultInstance(), context.level())) { - fuel += entry.getValue(); - } - } - } - return fuel; - } - - @Override - protected String getTranslationKey() { - return "fuel"; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/HeatDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/HeatDisplaySource.java deleted file mode 100644 index 98f052620..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/HeatDisplaySource.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import net.minecraft.ChatFormatting; -import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; - -public class HeatDisplaySource extends AbstractReactorStatDisplaySource { - - @Override - protected String getLabelKey() { - return "display_source.reactor.heat"; - } - - @Override - protected int getMax() { - return ReactorDisplayConstants.MAX_HEAT; - } - - @Override - protected ChatFormatting getColor(int value, ReactorControllerBlockEntity controller) { - return IHeat.HeatLevel.of(value, controller.getMultiblockSize()).getTextColor(); - } - - @Override - protected int computeValue(ReactorControllerBlockEntity controller, DisplayLinkContext context) { - return (int) controller.getConfiguredPattern().getOrCreateTag().getDouble("heat"); - } - - @Override - protected String getTranslationKey() { - return "heat"; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/LiquidLevelDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/LiquidLevelDisplaySource.java deleted file mode 100644 index 6acaab848..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/LiquidLevelDisplaySource.java +++ /dev/null @@ -1,51 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import com.simibubi.create.content.redstone.displayLink.source.NumericSingleLineDisplaySource; -import com.simibubi.create.content.redstone.displayLink.target.DisplayTargetStats; -import com.simibubi.create.foundation.gui.ModularGuiLineBuilder; -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraft.util.Mth; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -import java.util.List; - -public class LiquidLevelDisplaySource extends AbstractReactorStatDisplaySource { - @Override - protected String getLabelKey() { - return "display_source.reactor.fluid"; - } - - @Override - protected int getMax() { - return ReactorDisplayConstants.MAX_FLUID; - } - - @Override - protected ChatFormatting getColor(int value, ReactorControllerBlockEntity controller) { - return ChatFormatting.BLUE; - } - - @Override - protected int computeValue(ReactorControllerBlockEntity controller, DisplayLinkContext context) { - List fluidList = controller.getBigFluidStack(); - return (fluidList != null && !fluidList.isEmpty()) ? fluidList.get(0).amount : 0; - } - - @Override - protected MutableComponent getUnitSuffix() { - return CreateNuclearLang.translateDirect("generic.unit.fluid.value"); - } - - @Override - protected String getTranslationKey() { - return "liquid_level"; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorDisplayConstants.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorDisplayConstants.java deleted file mode 100644 index 28360ff21..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorDisplayConstants.java +++ /dev/null @@ -1,9 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -final class ReactorDisplayConstants { - static final int MAX_FUEL = 64; - static final int MAX_COOLER = 64; - static final int MAX_FLUID = 16000; - static final int MAX_HEAT = 1000; - private ReactorDisplayConstants() {} -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorGaugeRenderer.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorGaugeRenderer.java deleted file mode 100644 index 4b590b166..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorGaugeRenderer.java +++ /dev/null @@ -1,15 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraft.util.Mth; - -public final class ReactorGaugeRenderer { - private ReactorGaugeRenderer() {} - - static MutableComponent drawGauge(int current, int max, ChatFormatting color, int width) { - int filled = (int) (Mth.clamp((float) current / max, 0, 1) * width); - return Component.literal("█".repeat(filled) + "▒".repeat(Math.max(0, width - filled))).withStyle(color); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSizeDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSizeDisplaySource.java deleted file mode 100644 index 53bbfca1a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSizeDisplaySource.java +++ /dev/null @@ -1,54 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import com.simibubi.create.content.redstone.displayLink.source.NumericSingleLineDisplaySource; -import com.simibubi.create.content.redstone.displayLink.target.DisplayTargetStats; -import com.simibubi.create.foundation.gui.ModularGuiLineBuilder; -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -public class ReactorSizeDisplaySource extends NumericSingleLineDisplaySource { - - @Override - protected MutableComponent provideLine(DisplayLinkContext context, DisplayTargetStats stats) { - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(context.level(), context.getSourcePos()); - if (controller == null || controller.isRemoved()) return ZERO.copy(); - - // Label + trailing space - MutableComponent label = CreateNuclearLang.translateDirect("display_source.reactor.size").append(" "); - - int mode = context.sourceConfig().getInt("display_mode"); - int size = controller.getMultiblockSize(); - int tier = size <= 5 ? 1 : size <= 7 ? 2 : 3; - - return label.append(switch (mode) { - case 1 -> Component.literal((tier * 100 / 3) + "%").withStyle(ChatFormatting.BLUE); - case 2 -> { - // Short 3-segment gauge representing the tier - yield Component.literal("█".repeat(tier) + "▒".repeat(3 - tier)).withStyle(ChatFormatting.BLUE); - } - default -> { - String key = tier == 1 ? "small" : tier == 2 ? "medium" : "large"; - yield CreateNuclearLang.translateDirect("display_source.reactor.size." + key).withStyle(ChatFormatting.BLUE); - } - }); - } - - @Override protected String getTranslationKey() { return "size"; } - - @Override - @OnlyIn(Dist.CLIENT) - public void initConfigurationWidgets(DisplayLinkContext context, ModularGuiLineBuilder builder, boolean isFirstLine) { - if (isFirstLine) return; - builder.addSelectionScrollInput(0, 100, (selectionScrollInput, l) -> selectionScrollInput - .forOptions(CreateNuclearLang.translatedOptions("display_source.reactor.mode", "value", "percent", "gauge")), "display_mode"); - } - - @Override protected boolean allowsLabeling(DisplayLinkContext context) { return true; } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummary.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummary.java deleted file mode 100644 index 807952083..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummary.java +++ /dev/null @@ -1,106 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import net.minecraft.network.chat.MutableComponent; - -import java.util.ArrayList; -import java.util.List; - -/** - * Typed, immutable snapshot of a reactor controller's summary stats (status, size, - * fuel, cooler, fluid, heat), one named {@link ReactorSummaryRow} per stat. - *

- * Replaces the previous {@code List>} representation, which - * relied on a size-based sentinel (1 element = no controller, 6 elements = full - * summary) and on fragile positional access (e.g. {@code components.get(2).get(1)} - * for the fuel value) that silently broke if the row order ever changed. - *

- * Callers should build instances via {@link Builder}, and only call {@link #toRows()} - * at the point where Create's {@code DisplaySource} API actually requires the - * positional list format. - */ -public record ReactorSummary(ReactorSummaryRow status, - ReactorSummaryRow size, - ReactorSummaryRow fuel, - ReactorSummaryRow cooler, - ReactorSummaryRow fluid, - ReactorSummaryRow heat) { - - /** A single display row: a label component and its associated value component. */ - public record ReactorSummaryRow(MutableComponent label, MutableComponent value) { - List toPair() { - return List.of(label(), value()); - } - } - - /** - * Converts this summary to the positional {@code List>} - * format required by Create's {@code DisplaySource} API. This is the single place - * where row order matters; every other consumer should access fields by name - * (e.g. {@link #fuel()}) instead of relying on this order. - */ - public List> toRows() { - return List.of( - status().toPair(), size().toPair(), fuel().toPair(), - cooler().toPair(), fluid().toPair(), heat().toPair() - ); - } - - /** - * Fluent builder for {@link ReactorSummary}. All six rows are required; - * {@link #build()} throws {@link IllegalStateException} naming any missing row - * instead of allowing a partially-populated summary to be constructed silently. - */ - public static class Builder { - private ReactorSummaryRow status; - private ReactorSummaryRow size; - private ReactorSummaryRow fuel; - private ReactorSummaryRow cooler; - private ReactorSummaryRow fluid; - private ReactorSummaryRow heat; - - public Builder status(MutableComponent label, MutableComponent value) { - this.status = new ReactorSummaryRow(label, value); - return this; - } - - public Builder size(MutableComponent label, MutableComponent value) { - this.size = new ReactorSummaryRow(label, value); - return this; - } - - public Builder fuel(MutableComponent label, MutableComponent value) { - this.fuel = new ReactorSummaryRow(label, value); - return this; - } - - public Builder cooler(MutableComponent label, MutableComponent value) { - this.cooler = new ReactorSummaryRow(label, value); - return this; - } - - public Builder fluid(MutableComponent label, MutableComponent value) { - this.fluid = new ReactorSummaryRow(label, value); - return this; - } - - public Builder heat(MutableComponent label, MutableComponent value) { - this.heat = new ReactorSummaryRow(label, value); - return this; - } - - public ReactorSummary build() { - List missing = new ArrayList<>(); - if (status == null) missing.add("status"); - if (size == null) missing.add("size"); - if (fuel == null) missing.add("fuel"); - if (cooler == null) missing.add("cooler"); - if (fluid == null) missing.add("fluid"); - if (heat == null) missing.add("heat"); - - if (!missing.isEmpty()) - throw new IllegalStateException("Missing required ReactorSummary fields: " + String.join(", ", missing)); - - return new ReactorSummary(status, size, fuel, cooler, fluid, heat); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummaryDisplaySource.java b/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummaryDisplaySource.java deleted file mode 100644 index 57e2e4a0e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/redstone/displayLink/source/ReactorSummaryDisplaySource.java +++ /dev/null @@ -1,239 +0,0 @@ -package net.nuclearteam.createnuclear.content.redstone.displayLink.source; - -import java.util.List; -import java.util.Map; -import java.util.Optional; -import java.util.stream.Stream; - -import com.simibubi.create.api.behaviour.display.DisplaySource; -import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext; -import com.simibubi.create.content.redstone.displayLink.target.DisplayTargetStats; -import com.simibubi.create.content.trains.display.FlapDisplayBlockEntity; -import com.simibubi.create.content.trains.display.FlapDisplayLayout; -import com.simibubi.create.content.trains.display.FlapDisplaySection; -import com.simibubi.create.foundation.gui.ModularGuiLineBuilder; - -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraft.world.item.Item; -import net.minecraft.world.level.block.entity.LecternBlockEntity; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType.TypeRodPredicate; -import net.nuclearteam.createnuclear.content.logistics.BigFluidStack; -import net.nuclearteam.createnuclear.content.multiblock.IHeat; -import net.nuclearteam.createnuclear.content.multiblock.MultiblockHelpers; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -/** - * Display source rendering a reactor controller's summary (status, size, fuel, - * cooler, fluid, heat) as one line per stat, for both regular displays and - * flap displays. - *

- * The underlying data is built by {@link #getReactorSummary} into a - * {@link ReactorSummary}, which is only converted to Create's positional - * {@code List>} format at the last moment via - * {@link ReactorSummary#toRows()}, right before returning it to the caller. - */ -public class ReactorSummaryDisplaySource extends DisplaySource { - - /** Fallback line shown when only a single display row is available. */ - public static final List notEnoughSpaceSingle = - List.of(CreateNuclearLang.translateDirect("display_source.reactor.not_enough_space") - .append(CreateNuclearLang.translateDirect("display_source.reactor.for_reactor_status"))); - - /** Fallback lines shown when fewer than 6 rows are available (not enough for the full summary). */ - public static final List notEnoughSpaceDouble = - List.of(CreateNuclearLang.translateDirect("display_source.reactor.not_enough_space"), - CreateNuclearLang.translateDirect("display_source.reactor.for_reactor_status")); - - /** Fallback flap display rows, mirroring {@link #notEnoughSpaceDouble} for the flap layout. */ - public static final List> notEnoughSpaceFlap = - List.of(List.of(CreateNuclearLang.translateDirect("display_source.reactor.not_enough_space")), - List.of(CreateNuclearLang.translateDirect("display_source.reactor.for_reactor_status"))); - - /** - * Provides the text lines for a regular (non-flap) display target. - * Falls back to {@link #notEnoughSpaceSingle}/{@link #notEnoughSpaceDouble} when there - * isn't enough room, and to the "no controller" message when no reactor controller - * could be resolved for this source. - */ - @Override - public List provideText(DisplayLinkContext context, DisplayTargetStats stats) { - if (stats.maxRows() < 2) return notEnoughSpaceSingle; - if (stats.maxRows() < 6) return notEnoughSpaceDouble; - - int gaugeWidth = (stats.maxColumns() >= 80) ? 10 : 6; - - Optional summary = getReactorSummary(context, gaugeWidth); - if (summary.isEmpty()) { - return List.of(CreateNuclearLang.translateDirect("display_source.reactor.no_controller")); - } - - List> components = summary.get().toRows(); - - if (context.getTargetBlockEntity() instanceof LecternBlockEntity) { - Stream componentList = components.stream().map(list -> list.stream().reduce(MutableComponent::append).orElse(EMPTY_LINE)); - return List.of(componentList.reduce((c1, c2) -> c1.append(Component.literal("\n")).append(c2)).orElse(EMPTY_LINE)); - } - - return components.stream().map(list -> list.stream().reduce(MutableComponent::append).orElse(EMPTY_LINE)).toList(); - } - - /** - * Provides the rows for a flap display target. Disables the flap display context - * (falls back to the default layout) when there isn't enough room, either because - * of the row count or because the fuel value wouldn't fit the available columns. - */ - @Override - public List> provideFlapDisplayText(DisplayLinkContext context, DisplayTargetStats stats) { - if (stats.maxRows() < 6) { - context.flapDisplayContext = Boolean.FALSE; - return notEnoughSpaceFlap; - } - - int gaugeWidth = 6; - Optional summary = getReactorSummary(context, gaugeWidth); - - if (summary.isEmpty()) { - return notEnoughSpaceFlap; - } - - ReactorSummary reactorSummary = summary.get(); - - if (stats.maxColumns() * FlapDisplaySection.MONOSPACE < 6 * FlapDisplaySection.MONOSPACE + reactorSummary.fuel() - .value().getString().length() * FlapDisplaySection.WIDE_MONOSPACE) { - context.flapDisplayContext = Boolean.FALSE; - return notEnoughSpaceFlap; - } - - return reactorSummary.toRows(); - } - - /** - * Configures the flap display layout: the default layout for the first line - * (or when the flap display context was disabled by {@link #provideFlapDisplayText}), - * otherwise a two-section "Reactor" layout (label column + value/gauge column). - */ - @Override - public void loadFlapDisplayLayout(DisplayLinkContext context, FlapDisplayBlockEntity flapDisplay, FlapDisplayLayout layout, int lineIndex) { - if (lineIndex == 0 || context.flapDisplayContext instanceof Boolean b && !b) { - if (layout.isLayout("Default")) return; - layout.loadDefault(flapDisplay.getMaxCharCount()); - return; - } - - String layoutKey = "Reactor"; - if (layout.isLayout(layoutKey)) return; - - int lw = labelWidth(); - int labelLength = (int) (lw * FlapDisplaySection.MONOSPACE); - float maxSpace = flapDisplay.getMaxCharCount(1) * FlapDisplaySection.MONOSPACE; - - FlapDisplaySection label = new FlapDisplaySection(labelLength, "alphabet", false, true); - FlapDisplaySection symbols = new FlapDisplaySection(maxSpace - labelLength, "pixel", false, false).wideFlaps(); - - layout.configure(layoutKey, List.of(label, symbols)); - } - - /** - * Resolves the reactor controller for this source and builds a {@link ReactorSummary} - * from its current state. Returns {@link Optional#empty()} when no controller is - * assigned to this display source or it has been removed, so callers can distinguish - * that case from a valid summary without relying on list size/positional access. - */ - private Optional getReactorSummary(DisplayLinkContext context, int gaugeWidth) { - ReactorControllerBlockEntity controller = MultiblockHelpers.getControllerForPart(context.level(), context.getSourcePos()); - - if (controller == null || controller.isRemoved()) { - return Optional.empty(); - } - - int mode = context.sourceConfig().getInt("display_mode"); - - int heat = (int) controller.getConfiguredPattern().getOrCreateTag().getDouble("heat"); - int fuel = 0; - int cooler = 0; - - if (controller.getDisplayState() != null && controller.getDisplayState().items() != null) { - for (Map.Entry entry : controller.getDisplayState().items().entrySet()) { - if (TypeRodPredicate.isFuel(entry.getKey().getDefaultInstance(), context.level())) { - fuel += entry.getValue(); - } else if (TypeRodPredicate.isCooled(entry.getKey().getDefaultInstance(), context.level())) { - cooler += entry.getValue(); - } - } - } - - int size = controller.getMultiblockSize(); - List fluidList = controller.getBigFluidStack(); - int fluid = (fluidList != null && !fluidList.isEmpty() && fluidList.get(0) != null) ? fluidList.get(0).amount : 0; - - int lw = labelWidth(); - MutableComponent lStatus = padLabel("status", lw).append(" "); - MutableComponent lSize = padLabel("size", lw).append(" "); - MutableComponent lFuel = padLabel("fuel", lw).append(" "); - MutableComponent lCooler = padLabel("cooler", lw).append(" "); - MutableComponent lFluid = padLabel("fluid", lw).append(" "); - MutableComponent lHeat = padLabel("heat", lw).append(" "); - - return Optional.of(new ReactorSummary.Builder() - .status(lStatus, controller.isAssembled() ? - CreateNuclearLang.translateDirect("display_source.reactor.active").withStyle(ChatFormatting.GOLD) : - CreateNuclearLang.translateDirect("display_source.reactor.idle").withStyle(ChatFormatting.GRAY)) - .size(lSize, formatSize(size)) - .fuel(lFuel, formatValue(fuel, ReactorDisplayConstants.MAX_FUEL, mode, false, ChatFormatting.GREEN, gaugeWidth)) - .cooler(lCooler, formatValue(cooler, ReactorDisplayConstants.MAX_COOLER, mode, false, ChatFormatting.AQUA, gaugeWidth)) - .fluid(lFluid, formatFluid(fluid, ReactorDisplayConstants.MAX_FLUID, mode, ChatFormatting.BLUE, gaugeWidth)) - .heat(lHeat, formatValue(heat, ReactorDisplayConstants.MAX_HEAT, mode, true, IHeat.HeatLevel.of(heat, controller.getMultiblockSize()).getTextColor(), gaugeWidth)) - .build()); - } - - private MutableComponent padLabel(String key, int lw) { - return Component.literal(" ".repeat(lw - labelWidthOf(key))).append(labelOf(key)); - } - - private MutableComponent formatSize(int size) { - String key = size <= 5 ? "small" : size <= 7 ? "medium" : "large"; - return CreateNuclearLang.translateDirect("display_source.reactor.size." + key).withStyle(ChatFormatting.BLUE); - } - - private MutableComponent formatFluid(int current, int max, int mode, ChatFormatting color, int width) { - if (mode == 0 || mode == 3) return ReactorGaugeRenderer.drawGauge(current, max, color, width); - if (mode == 2) return Component.literal((current * 100 / max) + "%").withStyle(color); - return Component.literal(String.valueOf(current)).append(" ").append(CreateNuclearLang.translateDirect("generic.unit.fluid.value")).withStyle(color); - } - - private MutableComponent formatValue(int current, int max, int mode, boolean gaugeOnNormal, ChatFormatting color, int width) { - if (mode == 3 || (mode == 0 && gaugeOnNormal)) return ReactorGaugeRenderer.drawGauge(current, max, color, width); - if (mode == 2) return Component.literal((current * 100 / max) + "%").withStyle(color); - return Component.literal(String.valueOf(current)).withStyle(color); - } - - private int labelWidth() { - return Stream.of("status", "size", "fuel", "cooler", "fluid", "heat").mapToInt(this::labelWidthOf).max().orElse(0); - } - - private int labelWidthOf(String label) { - return labelOf(label).getString().length(); - } - - private MutableComponent labelOf(String label) { - return CreateNuclearLang.translateDirect("display_source.reactor." + label); - } - - @Override - @OnlyIn(Dist.CLIENT) - public void initConfigurationWidgets(DisplayLinkContext context, ModularGuiLineBuilder builder, boolean isFirstLine) { - if (isFirstLine) return; - builder.addSelectionScrollInput(0, 100, (selectionScrollInput, label) -> selectionScrollInput - .forOptions(CreateNuclearLang.translatedOptions("display_source.reactor.mode", "normal", "value", "percent", "gauge")), "display_mode"); - } - - @Override - protected String getTranslationKey() { - return "reactor_summary"; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/content/uraniumOre/UraniumOreItem.java b/src/main/java/net/nuclearteam/createnuclear/content/uraniumOre/UraniumOreItem.java deleted file mode 100644 index 20cd0258e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/content/uraniumOre/UraniumOreItem.java +++ /dev/null @@ -1,22 +0,0 @@ -package net.nuclearteam.createnuclear.content.uraniumOre; - -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.BlockItem; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.Block; -import net.nuclearteam.createnuclear.api.radiation.IRadiationSource; - -public class UraniumOreItem extends BlockItem implements IRadiationSource { - private final double radiation; - - public UraniumOreItem(Block block, Properties properties, double radiation) { - super(block, properties); - this.radiation = radiation; - } - - @Override - public double getRadiation(ItemStack stack, LivingEntity entity) { - return this.radiation * stack.getCount(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancement.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancement.java index 3c76031e3..2b8b7c574 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancement.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancement.java @@ -4,17 +4,16 @@ import net.minecraft.MethodsReturnNonnullByDefault; import net.minecraft.advancements.Advancement; -import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.advancements.critereon.*; import net.minecraft.data.CachedOutput; import net.minecraft.data.DataProvider; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; -import net.minecraft.tags.ItemTags; -import net.minecraft.world.entity.EntityType; -import net.minecraftforge.common.Tags; -import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.content.decoration.palettes.CNPaletteStoneTypes; +import net.minecraft.world.item.DyeColor; +import net.nuclearteam.createnuclear.CNBlocks; +import net.nuclearteam.createnuclear.CNFluids; +import net.nuclearteam.createnuclear.CNItems; +import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.foundation.advancement.CreateNuclearAdvancement.Builder; @@ -28,338 +27,185 @@ import java.util.function.Consumer; import java.util.function.UnaryOperator; -import static net.nuclearteam.createnuclear.foundation.advancement.CreateNuclearAdvancement.TaskType.*; + +import static net.nuclearteam.createnuclear.foundation.advancement.CreateNuclearAdvancement.TaskType.SILENT; +import static net.nuclearteam.createnuclear.foundation.advancement.CreateNuclearAdvancement.TaskType.SECRET; @MethodsReturnNonnullByDefault @ParametersAreNonnullByDefault @SuppressWarnings("unused") public class CNAdvancement implements DataProvider { - public static final EntityEquipmentPredicate FULL_ARMOR = new EntityEquipmentPredicate.Builder() - .head(ItemPredicate.Builder.item().of(CNItems.ANTI_RADIATION_HELMETS).build()) - .chest(ItemPredicate.Builder.item().of(CNItems.ANTI_RADIATION_CHESTPLATES).build()) - .legs(ItemPredicate.Builder.item().of(CNItems.ANTI_RADIATION_LEGGINGS).build()) - .feet(ItemPredicate.Builder.item().of(CNItems.ANTI_RADIATION_BOOTS).build()) - .build(); - - private static final List PREDICATES = List.of( - ItemPredicate.Builder.item().of(CNBlocks.ENRICHED_SOUL_SOIL).build(), - ItemPredicate.Builder.item().of(ItemTags.LOGS).build(), - ItemPredicate.Builder.item().of(Tags.Items.RODS_WOODEN).build() - ); - public static final List ENTRIES = new ArrayList<>(); public static final CreateNuclearAdvancement START = null, ROOT = create("root", b -> b.icon(CNItems.URANIUM_POWDER) - .title("Starting The Nuclear Journey") - .description("Unlock the basics of nuclear energy and get your first uranium powder") - .awardedForFree() - .special(SILENT) - ), - - CRAFT_ENRICHING_CAMPFIRE = create("craft_enriching_campfire", b -> b.icon(CNBlocks.ENRICHING_CAMPFIRE.asItem()) - .title("Does That Make Smoke?") - .description("Craft an Enriching Campfire") - .externalTrigger(RecipeCraftedTrigger.TriggerInstance.craftedItem(CreateNuclear.asResource("crafting/enriching_campfire"), PREDICATES)) - .after(ROOT) - ), + .title("Starting The Nuclear Journey") + .description("Unlock the basics of nuclear energy and get your first uranium powder") + .awardedForFree() + .special(SILENT)), RAW_URANIUM = create("raw_uranium", b -> b.icon(CNItems.RAW_URANIUM) - .title("The Raw Power") - .description("Mine uranium ore to obtain raw uranium for further processing") - .after(ROOT) - .whenIconCollected() - ), + .title("The Raw Power") + .description("Mine uranium ore to obtain raw uranium for further processing") + .after(ROOT) + .whenIconCollected()), URANIUM_POWDER = create("uranium_powder", b -> b.icon(CNItems.URANIUM_POWDER) - .title("Powdered Uranium") - .description("Crush raw uranium into powder to prepare for further refining") - .after(RAW_URANIUM) - .whenIconCollected() - ), - - AUTOMATIC_URANIUM = create("automatic_uranium", b -> b.icon(CNItems.URANIUM_POWDER) - .title("Automating Uranium") - .description("Obtain some uranium powder using the automatic uranium processing") - .after(ROOT) - .special(SECRET) - ), + .title("Powdered Uranium") + .description("Crush raw uranium into powder to prepare for further refining") + .after(RAW_URANIUM) + .whenIconCollected()), URANIUM_LIQUID = create("uranium_liquid", b -> b.icon(CNFluids.URANIUM.getBucket().get()) - .title("Turning Solid To Liquid") - .description("Obtain some uranium liquid by mixing uranium powder") - .after(URANIUM_POWDER) - .whenIconCollected() - ), + .title("Turning Solid To Liquid") + .description("Obtain some uranium liquid by mixing uranium powder") + .after(URANIUM_POWDER) + .whenIconCollected()), YELLOWCAKE = create("yellowcake", b -> b.icon(CNItems.YELLOWCAKE) - .title("The Yellowcake Process") - .description("Compact uranium liquid to create yellowcake") - .after(URANIUM_LIQUID) - .whenIconCollected() - ), - - CRUNCHY_URANIUM = create("crunchy_uranium", b -> b.icon(CNItems.YELLOWCAKE) - .title("What Did You Expect") - .description("Bro..... you did what ??") - .after(YELLOWCAKE) - .externalTrigger(ConsumeItemTrigger.TriggerInstance.usedItem(CNItems.YELLOWCAKE)) - .special(SECRET) - ), + .title("The Yellowcake Process") + .description("Compact uranium liquid to create yellowcake") + .after(URANIUM_LIQUID) + .whenIconCollected()), ENRICHED_YELLOWCAKE = create("enriched_yellowcake", b -> b.icon(CNItems.ENRICHED_YELLOWCAKE) - .title("Enhancing Yellowcake") - .description("Use a fan to enrich yellowcake and make it more powerful") - .after(YELLOWCAKE) - .whenIconCollected() - ), + .title("Enhancing Yellowcake") + .description("Use a fan to enrich yellowcake and make it more powerful") + .after(YELLOWCAKE) + .whenIconCollected()), URANIUM_ROD = create("uranium_rod", b -> b.icon(CNItems.URANIUM_ROD) - .title("The Power Of The Atom") - .description("Create your first uranium rod using enriched yellowcake in a mechanical crafter") - .after(ENRICHED_YELLOWCAKE) - .whenIconCollected() - ), - - RAW_THORIUM = create("raw_thorium", b -> b.icon(CNItems.RAW_THORIUM) - .title("Thorium's Glow") - .description("Mine thorium ore to obtain raw thorium for further processing") - .after(ROOT) - .whenIconCollected() - ), - - THORIUM_DUST = create("thorium_dust", b -> b.icon(CNItems.THORIUM_DUST) - .title("Powdered Thorium") - .description("Crush raw thorium into dust to prepare for further refining") - .after(RAW_THORIUM) - .whenIconCollected() - ), - - THORIUM_LIQUID = create("thorium_liquid", b -> b.icon(CNFluids.THORIUM.getBucket().get()) - .title("Molten Thorium") - .description("Obtain some thorium liquid by mixing thorium dust") - .after(THORIUM_DUST) - .whenIconCollected() - ), - - THORIUM_INGOT = create("thorium_ingot", b -> b.icon(CNItems.THORIUM_INGOT) - .title("Compacted Thorium") - .description("Compact thorium liquid to create a thorium ingot") - .after(THORIUM_LIQUID) - .whenIconCollected() - ), - - THORIUM_ROD = create("thorium_rod", b -> b.icon(CNItems.THORIUM_ROD) - .title("What A Blue Stick") - .description("Craft a thorium rod for the first time") - .after(THORIUM_INGOT) - .whenIconCollected() - ), - - CHEMISTRY_101 = create("chemistry_101", b -> b.icon(CNItems.NITRATE) - .title("Crushing It") - .description("Mine nitrate ore or crush limestone to obtain nitrate") - .after(ROOT) - .whenIconCollected() - ), - - GETTING_CONCENTRATED = create("getting_concentrated", b -> b.icon(CNItems.NITROGEN_CONCENTRATE) - .title("Getting Concentrated") - .description("Smelt nitrate in a blast furnace to obtain nitrogen concentrate") - .after(CHEMISTRY_101) - .whenIconCollected() - ), - - CHILL_OUT = create("chill_out", b -> b.icon(CNItems.COOLED_NITROGEN_CONCENTRATE) - .title("Chill Out") - .description("Cool down nitrogen concentrate to prepare it for liquefaction") - .after(GETTING_CONCENTRATED) - .whenIconCollected() - ), - - ABSOLUTE_ZERO = create("absolute_zero", b -> b.icon(CNFluids.LIQUID_NITROGEN.getBucket().get()) - .title("Absolute Zero") - .description("Mix cooled nitrogen concentrate to obtain liquid nitrogen") - .after(CHILL_OUT) - .whenIconCollected() - ), - - CRYOGENIC_BAPTISM = create("cryogenic_baptism", b -> b.icon(CNFluids.LIQUID_NITROGEN.getBucket().get()) - .title("I can't Feel My Feet Anymore") - .description("Swim in the liquid nitrogen for the first time") - .after(ABSOLUTE_ZERO) - .special(SECRET) - ), + .title("The Power Of The Atom") + .description("Create your first uranium rod using enriched yellowcake in a mechanical crafter") + .after(ENRICHED_YELLOWCAKE) + .whenIconCollected()), + COAL_DUST = create("coal_dust", b -> b.icon(CNItems.COAL_DUST) - .title("Coal Dust") - .description("Crush coal or charcoal to obtain coal dust, a key crafting material") - .after(ROOT) - .whenIconCollected() - ), + .title("Coal Dust") + .description("Crush coal or charcoal to obtain coal dust, a key crafting material") + .after(ROOT) + .whenIconCollected()), STEEL_INGOT = create("steel_ingot", b -> b.icon(CNItems.STEEL_INGOT) - .title("Steel Ingot") - .description("Combine coal dust and iron ingots to create steel ingots") - .after(COAL_DUST) - .whenIconCollected() - ), + .title("Steel Ingot") + .description("Combine coal dust and iron ingots to create steel ingots") + .after(COAL_DUST) + .whenIconCollected()), GRAPHENE = create("graphene", b -> b.icon(CNItems.GRAPHENE) - .title("Graphene") - .description("Press coal dust to create graphene") - .after(COAL_DUST) - .whenIconCollected() - ), + .title("Graphene") + .description("Press coal dust to create graphene") + .after(COAL_DUST) + .whenIconCollected()), GRAPHITE_ROD = create("graphite_rod", b -> b.icon(CNItems.GRAPHITE_ROD) - .title("Don't Forget Those Ones") - .description("Combine graphene and steel ingots in a mechanical crafter to make graphite rods") - .after(GRAPHENE) - .whenIconCollected() - ), + .title("Don't Forget Those Ones") + .description("Combine graphene and steel ingots in a mechanical crafter to make graphite rods") + .after(GRAPHENE) + .whenIconCollected()), + RAW_LEAD = create("raw_lead", b -> b.icon(CNItems.RAW_LEAD) - .title("Raw Lead") - .description("Obtain some raw lead by mining lead ore") - .after(ROOT) - .whenIconCollected() - ), + .title("Raw Lead") + .description("Obtain some raw lead by mining lead ore") + .after(ROOT) + .whenIconCollected()), LEAD_INGOT = create("lead_ingot", b -> b.icon(CNItems.LEAD_INGOT) - .title("Lead Ingot") - .description("Smelt a raw lead to obtain a lead ingot") - .after(RAW_LEAD) - .whenIconCollected() - ), + .title("Lead ingot") + .description("Smelt a raw lead to obtain a lead ingot") + .after(RAW_LEAD) + .whenIconCollected()), REINFORCED_GLASS = create("reinforced_glass", b -> b.icon(CNBlocks.REINFORCED_GLASS) - .title("Reinforced Glass") - .description("Craft some reinforced glass for the first time") - .after(LEAD_INGOT) - .whenIconCollected() - ), - - ANTI_RADIATION_ARMOR = create("anti_radiation_armor", b -> b.icon(CNItems.ANTI_RADIATION_HELMETS) - .title("Anti Radiation Armor") - .description("Craft your first anti-radiation armor piece to protect yourself from radiation") - .after(LEAD_INGOT) - .whenItemCollected(CNTags.CNItemTags.ANTI_RADIATION_ARMOR.tag) - ), - - AVOIDING_CANCER = create("avoiding_cancer", b -> b.icon(CNItems.ANTI_RADIATION_HELMETS) - .title("Best Keep Yourself Covered") - .description("Equip anti-radiation armor for the first time") - .after(ANTI_RADIATION_ARMOR) - .externalTrigger( - new PlayerTrigger.TriggerInstance(CriteriaTriggers.INVENTORY_CHANGED.getId(), EntityPredicate.wrap(EntityPredicate.Builder.entity().of(EntityType.PLAYER).equipment(FULL_ARMOR).build())) - ) - ), - - DYE_ANTI_RADIATION_ARMOR = create("dye_anti_radiation_armor", b -> b.icon(CNItems.ANTI_RADIATION_HELMETS) - .title("Pimp My Armor") - .description("Dye your anti radiation armor to any color") - .after(ANTI_RADIATION_ARMOR) - ), + .title("Reinforced Glass") + .description("Craft some reinforced glass for the first time") + .after(LEAD_INGOT) + .whenIconCollected()), + + ANTI_RADIATION_ARMOR = create("anti_radiation_armor", b -> b.icon(CNItems.ANTI_RADIATION_HELMETS.get(DyeColor.WHITE)) + .title("Anti radiation Armor") + .description("Craft your first anti-radiation armor piece to protect yourself from radiation") + .after(LEAD_INGOT) + .whenItemCollected(CNTags.CNItemTags.ALL_ANTI_RADIATION_ARMORS.tag)), + + FULL_ANTI_RADIATION_ARMOR = create("full_anti_radiation_armor", b -> b.icon(CNItems.ANTI_RADIATION_CHESTPLATES.get(DyeColor.WHITE)) + .title("Fully Protected") + .description("Wear a full set of anti-radiation armor to fully protect yourself from radiation") + .externalTrigger( + InventoryChangeTrigger.TriggerInstance.hasItems( + new ItemPredicate(CNTags.CNItemTags.ANTI_RADIATION_HELMET_FULL_DYE.tag, null, MinMaxBounds.Ints.ANY, MinMaxBounds.Ints.ANY, EnchantmentPredicate.NONE, EnchantmentPredicate.NONE, null, NbtPredicate.ANY), + new ItemPredicate(CNTags.CNItemTags.ANTI_RADIATION_CHESTPLATE_FULL_DYE.tag, null, MinMaxBounds.Ints.ANY, MinMaxBounds.Ints.ANY, EnchantmentPredicate.NONE, EnchantmentPredicate.NONE, null, NbtPredicate.ANY), + new ItemPredicate(CNTags.CNItemTags.ANTI_RADIATION_LEGGINGS_FULL_DYE.tag, null, MinMaxBounds.Ints.ANY, MinMaxBounds.Ints.ANY, EnchantmentPredicate.NONE, EnchantmentPredicate.NONE, null, NbtPredicate.ANY), + new ItemPredicate(CNTags.CNItemTags.ANTI_RADIATION_BOOTS_DYE.tag, null, MinMaxBounds.Ints.ANY, MinMaxBounds.Ints.ANY, EnchantmentPredicate.NONE, EnchantmentPredicate.NONE, null, NbtPredicate.ANY) + )) + .after(ANTI_RADIATION_ARMOR)), + + DYE_ANTI_RADIATION_ARMOR = create("dye_anti_radiation_armor", b -> b.icon(CNItems.ANTI_RADIATION_HELMETS.get(DyeColor.RED)) + .title("Pimp My Armor") + .description("Dye your anti radiation armor to any color") + .whenItemCollected(CNTags.CNItemTags.ANTI_RADIATION_HELMET_DYE.tag) + .whenItemCollected(CNTags.CNItemTags.ANTI_RADIATION_CHESTPLATE_DYE.tag) + .whenItemCollected(CNTags.CNItemTags.ANTI_RADIATION_LEGGINGS_DYE.tag) + .after(ANTI_RADIATION_ARMOR)), + + + AUTOMATIC_URANIUM = create("automatic_uranium", b -> b.icon(CNItems.URANIUM_POWDER) + .title("Automating Uranium") + .description("Obtain some uranium powder using the automatic uranium processing") + .after(ROOT) + .special(SECRET)), REACTOR_CASING = create("reactor_casing", b -> b.icon(CNBlocks.REACTOR_CASING) - .title("The Power Of The Reactor") - .description("Craft a reactor casing to begin building your nuclear reactor") - .after(ROOT) - .whenIconCollected() - ), - - SILENCE_THE_CORE = create("silence_the_core", b -> b.icon(CNBlocks.REACTOR_ALARM.asItem()) - .title("It Makes So Much Noise !") - .description("sound the alarm for the first time") - .after(REACTOR_CASING) - ), + .title("The Power Of The Reactor") + .description("Craft a reactor casing to begin building your nuclear reactor") + .after(ROOT) + .whenIconCollected()), REACTOR_CONTROLLER = create("reactor_controller", b -> b.icon(CNBlocks.REACTOR_CONTROLLER) - .title("Controller Of The Core") - .description("Craft a reactor controller to manage and regulate your reactor") - .after(REACTOR_CASING) - .whenIconCollected() - ), - - NO_TIME_TO_DIE = create("no_time_to_die", b -> b.icon(CNPaletteStoneTypes.AUTUNITE.baseBlock.get().asItem()) - .title("No Time To Die") - .description("Stop the reactor before the KABOOOM !") - .after(REACTOR_CONTROLLER) - ), - - T1_REACTOR = create("t1", b -> b.icon(CNBlocks.REACTOR_CONTROLLER.asItem()) - .title("Reactor Controller T1") - .description("Build a tier 1 Nuclear Reactor") - .special(EXPERT) - .after(REACTOR_CONTROLLER) - ), - - T2_REACTOR = create("t2", b -> b.icon(CNBlocks.REACTOR_CONTROLLER.asItem()) - .title("Reactor Controller T2") - .description("Build a tier 2 Nuclear Reactor") - .special(EXPERT) - .after(T1_REACTOR) - ), - - T3_REACTOR = create("t3", b -> b.icon(CNBlocks.REACTOR_CONTROLLER.asItem()) - .title("Reactor Controller T3") - .description("Build a tier 3 Nuclear Reactor") - .special(EXPERT) - .after(T2_REACTOR) - ), + .title("Controller Of The Core") + .description("Craft a reactor controller to manage and regulate your reactor") + .after(REACTOR_CASING) + .whenIconCollected()), - REACTOR_BLUEPRINT = create("reactor_blueprint", b -> b.icon(CNItems.REACTOR_BLUEPRINT) - .title("Blueprint For Power") - .description("Craft a reactor blueprint to design the layout of rods in your reactor") - .after(REACTOR_CONTROLLER) - .whenIconCollected() - ), - - REACTOR_ROD_INPUT = create("feeding_the_reactor", b -> b.icon(CNBlocks.REACTOR_ROD_INPUT) - .title("Feeding The Reactor") - .description("Craft a Reactor Rod Input to feed heating and cooling rods into your reactor") - .after(REACTOR_CASING) - .whenIconCollected() - ), - - REACTOR_FLUID_INPUT = create("fueling_the_reactor", b -> b.icon(CNBlocks.REACTOR_FLUID_INPUT) - .title("Fueling The Reactor") - .description("Craft a Reactor Fluid Input to feed liquid coolant into your reactor") - .after(REACTOR_ROD_INPUT) - .whenIconCollected() - ), - - REACTOR_OUTPUT = create("unlimited_power", b -> b.icon(CNBlocks.REACTOR_OUTPUT) - .title("Unlimited Power") - .description("Craft a Reactor Output to extract the energy produced by your reactor") - .after(REACTOR_FLUID_INPUT) - .whenIconCollected() - ), - REACTOR_CORE = create("reactor_core", b -> b.icon(CNBlocks.REACTOR_CORE) - .title("Core Of Power") - .description("Craft the reactor core to harness the full energy of your nuclear reactor") - .after(REACTOR_CASING) - .whenIconCollected() - ), + REACTOR_BLUEPRINT = create("reactor_blueprint", b -> b.icon(CNItems.REACTOR_BLUEPRINT) + .title("Blueprint For Power") + .description("Craft a reactor blueprint to design the layout of rods in your reactor") + .after(REACTOR_CONTROLLER) + .whenIconCollected()), REACTOR_COOLER = create("reactor_cooler", b -> b.icon(CNBlocks.REACTOR_COOLER) - .title("Cooling The Reactor") - .description("Craft a reactor cooler to cool your reactor") - .after(REACTOR_CORE) - .whenIconCollected() - ), + .title("Cooling The Reactor") + .description("Craft a reactor cooler to cool your reactor") + .after(REACTOR_CASING) + .whenIconCollected()), REACTOR_FRAME = create("reactor_frame", b -> b.icon(CNBlocks.REACTOR_FRAME) - .title("Reactor Frame") - .description("Craft a reactor frame to build your nuclear reactor") - .after(REACTOR_COOLER) - .whenIconCollected() - ) + .title("Reactor Frame") + .description("Craft a reactor frame to build your nuclear reactor") + .after(REACTOR_CASING) + .whenIconCollected()), + + REACTOR_INPUT = create("reactor_input", b -> b.icon(CNBlocks.REACTOR_INPUT) + .title("Fueling The Reactor") + .description("Craft a reactor input to feed uranium and graphite rods into your reactor") + .after(REACTOR_CASING) + .whenIconCollected()), + + REACTOR_OUTPUT = create("reactor_output", b -> b.icon(CNBlocks.REACTOR_OUTPUT) + .title("Power Output") + .description("Craft a reactor output to transfer the energy produced by your reactor") + .after(REACTOR_CASING) + .whenIconCollected()), - ; + REACTOR_CORE = create("reactor_core", b -> b.icon(CNBlocks.REACTOR_CORE) + .title("Core of Power") + .description("Craft the reactor core to harness the full energy of your nuclear reactor") + .after(REACTOR_CASING) + .whenIconCollected()); private final PackOutput output; @@ -401,6 +247,4 @@ public static void provideLang(BiConsumer consumer) { for (CreateNuclearAdvancement advancement : ENTRIES) advancement.provideLang(consumer); } - - public static void register() {} } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancementBehaviour.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancementBehaviour.java deleted file mode 100644 index 9abf48ef4..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNAdvancementBehaviour.java +++ /dev/null @@ -1,114 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.advancement; - -import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; -import com.simibubi.create.foundation.blockEntity.behaviour.BehaviourType; -import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import net.minecraftforge.common.util.FakePlayer; - -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; - -public class CNAdvancementBehaviour extends BlockEntityBehaviour { - public static final BehaviourType TYPE = new BehaviourType<>(); - - private UUID playerId; - private final Set advancements; - - public CNAdvancementBehaviour(SmartBlockEntity be, CreateNuclearAdvancement ...advancement) { - super(be); - this.advancements = new HashSet<>(); - add(advancement); - } - - public void add(CreateNuclearAdvancement ...advancement) { - this.advancements.addAll(Arrays.asList(advancement)); - } - - public boolean isOwnerPresent() { - return playerId != null; - } - - public void setPlayer(UUID id) { - Player player = getWorld().getPlayerByUUID(id); - if (player == null) return; - playerId = id; - removeAwarded(); - blockEntity.setChanged(); - } - - @Override - public void initialize() { - super.initialize(); - removeAwarded(); - } - - private void removeAwarded() { - Player player = getPlayer(); - if (player == null) return; - - advancements.removeIf(c -> c.isAlreadyAwardedTo(player)); - if (advancements.isEmpty()) { - playerId = null; - blockEntity.setChanged(); - } - } - - public void awardPlayer(CreateNuclearAdvancement advancement) { - Player player = getPlayer(); - if (player == null) - return; - award(advancement, player); - } - - public static void setPlacedBy(Level worldIn, BlockPos pos, LivingEntity placer) { - CNAdvancementBehaviour behaviour = BlockEntityBehaviour.get(worldIn, pos, TYPE); - if (behaviour == null) - return; - if (placer instanceof FakePlayer) - return; - if (placer instanceof ServerPlayer) - behaviour.setPlayer(placer.getUUID()); - } - - @Override - public void write(CompoundTag nbt, boolean clientPacket) { - super.write(nbt, clientPacket); - if (playerId != null) - nbt.putUUID("Owner", playerId); - } - - @Override - public void read(CompoundTag nbt, boolean clientPacket) { - super.read(nbt, clientPacket); - if (nbt.contains("Owner")) - playerId = nbt.getUUID("Owner"); - } - - @Override - public BehaviourType getType() { - return TYPE; - } - - private Player getPlayer() { - if (playerId == null) return null; - return getWorld().getPlayerByUUID(playerId); - } - - private void award(CreateNuclearAdvancement advancement, Player player) { - if (!advancement.isAlreadyAwardedTo(player)) advancement.awardTo(player); - removeAwarded(); - } - - @Override - public String toString() { - return "CNAdvancementBehaviour: [playerId => " + playerId + ", advancement => " + advancements.toArray() + "]"; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNTriggers.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNTriggers.java deleted file mode 100644 index 69c952735..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CNTriggers.java +++ /dev/null @@ -1,23 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.advancement; - -import net.minecraft.advancements.CriteriaTriggers; - -import java.util.ArrayList; -import java.util.List; - -public class CNTriggers { - private static final List> triggers = new ArrayList<>(); - - public static SimpleCreateNuclearTrigger addSimple(String id) { - return add(new SimpleCreateNuclearTrigger(id)); - } - - private static > T add(T instance) { - triggers.add(instance); - return instance; - } - - public static void register() { - triggers.forEach(CriteriaTriggers::register); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CreateNuclearAdvancement.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CreateNuclearAdvancement.java index 83fcc72c8..bbab8cd53 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CreateNuclearAdvancement.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CreateNuclearAdvancement.java @@ -1,5 +1,7 @@ package net.nuclearteam.createnuclear.foundation.advancement; +import com.simibubi.create.foundation.advancement.AllTriggers; +import com.simibubi.create.foundation.advancement.SimpleCreateTrigger; import com.tterrag.registrate.util.entry.ItemProviderEntry; import net.minecraft.advancements.Advancement; import net.minecraft.advancements.CriterionTriggerInstance; @@ -23,12 +25,12 @@ @SuppressWarnings("unused") public class CreateNuclearAdvancement { - static final ResourceLocation BACKGROUND = CreateNuclear.asResource("textures/gui/advancements/backgrounds/background_advancement.png"); + static final ResourceLocation BACKGROUND = CreateNuclear.asResource("textures/block/steel_block.png"); static final String LANG = "advancement." + CreateNuclear.MOD_ID + "."; static final String SECRET_SUFFIX = "\n\u00A77(Hidden Advancement)"; private final Advancement.Builder builder; - private SimpleCreateNuclearTrigger builtinTrigger; + private SimpleCreateTrigger builtinTrigger; private CreateNuclearAdvancement parent; Advancement datagenResult; @@ -46,7 +48,7 @@ public CreateNuclearAdvancement(String id, UnaryOperator b) { b.apply(t); if (!t.externalTrigger) { - builtinTrigger = CNTriggers.addSimple(id + "_builtin"); + builtinTrigger = AllTriggers.addSimple(id + "_builtin"); builder.addCriterion("0", builtinTrigger.instance()); } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CriterionTriggerBase.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CriterionTriggerBase.java deleted file mode 100644 index 60b1c56f5..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/CriterionTriggerBase.java +++ /dev/null @@ -1,84 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.advancement; - -import com.google.common.collect.Maps; -import net.minecraft.MethodsReturnNonnullByDefault; -import net.minecraft.advancements.CriterionTrigger; -import net.minecraft.advancements.critereon.AbstractCriterionTriggerInstance; -import net.minecraft.advancements.critereon.ContextAwarePredicate; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.PlayerAdvancements; -import net.minecraft.server.level.ServerPlayer; -import net.nuclearteam.createnuclear.CreateNuclear; - -import javax.annotation.Nullable; -import javax.annotation.ParametersAreNonnullByDefault; -import java.util.*; -import java.util.function.Supplier; - -@ParametersAreNonnullByDefault -@MethodsReturnNonnullByDefault -public abstract class CriterionTriggerBase implements CriterionTrigger { - - public CriterionTriggerBase(String id) { - this.id = CreateNuclear.asResource(id); - } - - private final ResourceLocation id; - protected final Map>> listeners = Maps.newHashMap(); - - @Override - public void addPlayerListener(PlayerAdvancements playerAdvancementsIn, Listener listener) { - Set> playerListeners = this.listeners.computeIfAbsent(playerAdvancementsIn, k -> new HashSet<>()); - - playerListeners.add(listener); - } - - @Override - public void removePlayerListener(PlayerAdvancements playerAdvancementsIn, Listener listener) { - Set> playerListeners = this.listeners.get(playerAdvancementsIn); - if (playerListeners != null) { - playerListeners.remove(listener); - if (playerListeners.isEmpty()) { - this.listeners.remove(playerAdvancementsIn); - } - } - } - - @Override - public void removePlayerListeners(PlayerAdvancements playerAdvancementsIn) { - this.listeners.remove(playerAdvancementsIn); - } - - @Override - public ResourceLocation getId() { - return id; - } - - protected void trigger(ServerPlayer player, @Nullable List> suppliers) { - PlayerAdvancements playerAdvancements = player.getAdvancements(); - Set> playerListeners = this.listeners.get(playerAdvancements); - if (playerListeners != null) { - List> list = new LinkedList<>(); - - for (Listener listener : playerListeners) { - if (listener.getTriggerInstance() - .test(suppliers)) { - list.add(listener); - } - } - - list.forEach(listener -> listener.run(playerAdvancements)); - - } - } - - public abstract static class Instance extends AbstractCriterionTriggerInstance { - - public Instance(ResourceLocation idIn, ContextAwarePredicate predicate) { - super(idIn, predicate); - } - - protected abstract boolean test(@Nullable List> suppliers); - } - -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/SimpleCreateNuclearTrigger.java b/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/SimpleCreateNuclearTrigger.java deleted file mode 100644 index 90ace6212..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/advancement/SimpleCreateNuclearTrigger.java +++ /dev/null @@ -1,41 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.advancement; - -import com.google.gson.JsonObject; -import net.minecraft.advancements.critereon.ContextAwarePredicate; -import net.minecraft.advancements.critereon.DeserializationContext; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerPlayer; -import org.jetbrains.annotations.Nullable; - -import java.util.List; -import java.util.function.Supplier; - -public class SimpleCreateNuclearTrigger extends CriterionTriggerBase { - public SimpleCreateNuclearTrigger(String id) { - super(id); - } - - @Override - public Instance createInstance(JsonObject pJson, DeserializationContext pContext) { - return new SimpleCreateNuclearTrigger.Instance(getId()); - } - - public void trigger(ServerPlayer player) { - super.trigger(player, null); - } - - public SimpleCreateNuclearTrigger.Instance instance() { - return new SimpleCreateNuclearTrigger.Instance(getId()); - } - - public static class Instance extends CriterionTriggerBase.Instance { - public Instance(ResourceLocation id) { - super(id, ContextAwarePredicate.ANY); - } - - @Override - protected boolean test(@Nullable List> suppliers) { - return true; - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/block/EventTriggerBlock.java b/src/main/java/net/nuclearteam/createnuclear/foundation/block/EventTriggerBlock.java new file mode 100644 index 000000000..5a724318b --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/block/EventTriggerBlock.java @@ -0,0 +1,37 @@ +package net.nuclearteam.createnuclear.foundation.block; + +import net.minecraft.MethodsReturnNonnullByDefault; +import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.nuclearteam.createnuclear.CNPackets; +import net.nuclearteam.createnuclear.CreateNuclear; +import net.nuclearteam.createnuclear.content.multiblock.controller.EventTriggerPacket; + +import javax.annotation.ParametersAreNonnullByDefault; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +@SuppressWarnings("deprecation") +public class EventTriggerBlock extends Block { + public EventTriggerBlock(Properties properties) { + super(properties); + } + + @Override + public InteractionResult use(BlockState state, Level level, BlockPos pos, + Player player, InteractionHand hand, BlockHitResult hit) { + if (!level.isClientSide) { + // Send a packet to all clients around this block within 16 blocks + EventTriggerPacket packet = new EventTriggerPacket(100); // display for 100 ticks + CreateNuclear.LOGGER.warn("hum EventTriggerBlock ? {}", packet); + CNPackets.sendToNear(level, pos, 16, packet); + } + return InteractionResult.SUCCESS; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/block/MultiDirectionalReactorBlock.java b/src/main/java/net/nuclearteam/createnuclear/foundation/block/MultiDirectionalReactorBlock.java deleted file mode 100644 index 1ea7e18a6..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/block/MultiDirectionalReactorBlock.java +++ /dev/null @@ -1,34 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.block; - -import com.mojang.math.MethodsReturnNonnullByDefault; -import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.level.LevelReader; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Mirror; -import net.minecraft.world.level.block.Rotation; -import net.minecraft.world.level.block.SoundType; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import net.minecraft.world.level.block.state.properties.DirectionProperty; -import net.minecraftforge.common.extensions.IForgeBlock; - -@MethodsReturnNonnullByDefault -@SuppressWarnings("deprecation") -public abstract class MultiDirectionalReactorBlock extends Block { - public static final DirectionProperty FACING = BlockStateProperties.FACING; - - public MultiDirectionalReactorBlock(Properties properties) { - super(properties); - } - - @Override - public BlockState rotate(BlockState state, Rotation rotation) { - return state.setValue(FACING, rotation.rotate(state.getValue(FACING))); - } - - @Override - public BlockState mirror(BlockState state, Mirror mirror) { - return state.rotate(mirror.getRotation(state.getValue(FACING))); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/damageTypes/CNDamageSources.java b/src/main/java/net/nuclearteam/createnuclear/foundation/damageTypes/CNDamageSources.java deleted file mode 100644 index 96b9761a9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/damageTypes/CNDamageSources.java +++ /dev/null @@ -1,37 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.damageTypes; - -import net.minecraft.core.Registry; -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.damagesource.DamageSource; -import net.minecraft.world.damagesource.DamageType; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.LevelReader; -import net.nuclearteam.createnuclear.CNDamageTypes; - -import javax.annotation.Nullable; - -public class CNDamageSources { - public static DamageSource radiation(Level level) { - return source(CNDamageTypes.RADIATION, level); - } - public static DamageSource fanRadiation(Level level) { - return source(CNDamageTypes.FAN_RADIATION, level); - } - - private static DamageSource source(ResourceKey key, LevelReader level) { - Registry registry = level.registryAccess().registryOrThrow(Registries.DAMAGE_TYPE); - return new DamageSource(registry.getHolderOrThrow(key)); - } - - private static DamageSource source(ResourceKey key, LevelReader level, @Nullable Entity entity) { - Registry registry = level.registryAccess().registryOrThrow(Registries.DAMAGE_TYPE); - return new DamageSource(registry.getHolderOrThrow(key), entity); - } - - private static DamageSource source(ResourceKey key, LevelReader level, @Nullable Entity causingEntity, @Nullable Entity directEntity) { - Registry registry = level.registryAccess().registryOrThrow(Registries.DAMAGE_TYPE); - return new DamageSource(registry.getHolderOrThrow(key), causingEntity, directEntity); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/CNBuilderTransformers.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/CNBuilderTransformers.java deleted file mode 100644 index d25d6cc50..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/CNBuilderTransformers.java +++ /dev/null @@ -1,97 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.data; - -import com.tterrag.registrate.providers.DataGenContext; -import com.tterrag.registrate.providers.RegistrateItemModelProvider; -import com.tterrag.registrate.util.entry.ItemEntry; -import com.tterrag.registrate.util.nullness.NonNullBiConsumer; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.Mob; -import net.minecraft.world.item.DyeColor; -import net.minecraft.world.item.Item; -import net.minecraftforge.client.model.generators.ItemModelBuilder; -import net.minecraftforge.common.ForgeSpawnEggItem; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.biome.BiomeIrradiationExtractorItem; - -import java.util.List; -import java.util.function.Supplier; - -public class CNBuilderTransformers { - - /** - * Generates the item model for a dyeable anti-radiation armor piece. - *

- * The undyed ("default") piece uses a flat 2D icon ({@code item/generated} with the - * {@code item/armors/default_anti_radiation_} sprite) instead of the 3D Blockbench - * model, since the dropped/inventory 3D rendering was problematic. The worn armor on the - * body is unaffected (handled by {@code AntiRadiationArmorModel}). - *

- * One model override per {@link DyeColor} is added, driven by the client-side - * {@code createnuclear:cloth_color} item property (see {@code CreateNuclearClient}). Each - * per-color child model still re-textures the 3D Blockbench geometry ({@code item//item}) - * with the matching {@code item/armors/_anti_radiation_suit} sheet. - *

- * The texture keys differ per slot: the helmet geometry uses {@code layer0}/{@code particle}, - * the other pieces use {@code 14} — hence {@code textureKeys} is passed explicitly. - */ - public static NonNullBiConsumer, RegistrateItemModelProvider> coloredArmorModel(String slot, String... textureKeys) { - return (c, p) -> { - ResourceLocation baseParent = p.modLoc("item/" + c.getName() + "/item"); - ItemModelBuilder outer = p.generated(c, CreateNuclear.asResource("item/armors/default_anti_radiation_" + slot)); - // DyeColor.values() is ordered by id (0..15); overrides must be ascending by predicate - // value so vanilla override resolution selects the exact color (returns last match <= value).cloth - // The cloth_color property is clamped to [0,1] (see CreateNuclearClient), hence the - // (id+1)/16 normalization here must match the value returned there exactly. - for (DyeColor color : DyeColor.values()) { - String colorName = color.getSerializedName(); - ItemModelBuilder child = p.withExistingParent("item/colored/" + colorName + "_anti_radiation_" + slot, baseParent); - for (String key : textureKeys) { - child.texture(key, "item/armors/" + colorName + "_anti_radiation_suit"); - } - outer.override() - .predicate(CreateNuclear.asResource("cloth_color"), (color.getId() + 1) / 16f) - .model(child) - .end(); - } - }; - } - - /** - * Generates the per-tier model overrides for the biome restore cell, driven by the - * client-side {@code createnuclear:charge} item property (see {@code CreateNuclearClient}). - * Overrides must stay ascending by predicate value (vanilla resolves to the last match <= value), - * and the thresholds here must match the ratio returned by {@code biomeRestoreItemProperties}. - */ - public static NonNullBiConsumer, RegistrateItemModelProvider> biomeRestoreModel() { - return (c, p) -> { - ItemModelBuilder outer = p.generated(c, CreateNuclear.asResource("item/biome_irradiation_extractor/empty")); - - record Tier(String name, float threshold) {} - List tiers = List.of( - new Tier("quarter", 0.25f), - new Tier("half", 0.5f), - new Tier("three_quarters", 0.75f), - new Tier("full", 1.0f) - ); - - for (Tier tier : tiers) { - ItemModelBuilder child = p.withExistingParent("item/biome_irradiation_extractor/" + tier.name(), p.mcLoc("item/generated")) - .texture("layer0", CreateNuclear.asResource("item/biome_irradiation_extractor/" + tier.name())); - - outer.override() - .predicate(CreateNuclear.asResource(BiomeIrradiationExtractorItem.TAG), tier.threshold()) - .model(child) - .end(); - } - }; - } - - public static ItemEntry spawnEgg(String name, Supplier> entity, int backgroundColor, int highlightColor, String nameItems) { - return CreateNuclear.REGISTRATE - .item(name, p -> new ForgeSpawnEggItem(entity, backgroundColor, highlightColor, p)) - .lang(nameItems) - .model((c, p) -> p.withExistingParent(c.getName(), new ResourceLocation("item/template_spawn_egg"))) - .register(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCompactingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCompactingRecipeGen.java index 25633869b..a7bdd5a8d 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCompactingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCompactingRecipeGen.java @@ -3,6 +3,7 @@ import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.api.data.recipe.CompactingRecipeGen; import net.minecraft.data.PackOutput; +import net.nuclearteam.createnuclear.CNFluids; import net.nuclearteam.createnuclear.CNItems; import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.CreateNuclear; @@ -12,13 +13,7 @@ public class CNCompactingRecipeGen extends CompactingRecipeGen { YELLOWCAKE = create(CreateNuclear.asResource("uranium_fluid_to_yellowcake"), b -> b .require(CNTags.CNFluidTags.URANIUM.tag, 100) .output(CNItems.YELLOWCAKE, 1) - ), - - THORIUM = create(CreateNuclear.asResource("thorium_fluid_to_thorium_ingot"), b -> b - .require(CNTags.CNFluidTags.THORIUM.tag, 200) - .output(CNItems.THORIUM_INGOT, 1) - ) - ; + ); public CNCompactingRecipeGen(PackOutput output) { diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCrushingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCrushingRecipeGen.java index 1f5bdfde6..89b4eeabc 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCrushingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNCrushingRecipeGen.java @@ -1,14 +1,11 @@ package net.nuclearteam.createnuclear.foundation.data.recipe; -import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.api.data.recipe.CrushingRecipeGen; -import com.simibubi.create.content.decoration.palettes.AllPaletteStoneTypes; import com.simibubi.create.content.processing.recipe.ProcessingRecipe; import com.simibubi.create.content.processing.recipe.ProcessingRecipeBuilder; import com.simibubi.create.content.processing.recipe.ProcessingRecipeSerializer; -import net.createmod.catnip.lang.Lang; import net.createmod.catnip.platform.CatnipServices; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; @@ -25,18 +22,17 @@ import java.util.function.Supplier; import java.util.function.UnaryOperator; - public class CNCrushingRecipeGen extends CrushingRecipeGen { GeneratedRecipe COAL_DUST = create("coal", b -> b .duration(250) .require(ItemTags.COALS) - .output(0.50f, CNItems.COAL_DUST) + .output(.50f, CNItems.COAL_DUST) ), GRANITE_URANIUM_POWDER = create(() -> Items.GRANITE, b -> b.duration(250) - .output(0.5f, CNItems.URANIUM_POWDER) + .output(.5f, CNItems.URANIUM_POWDER) .output(1f, Blocks.RED_SAND) ), @@ -45,49 +41,31 @@ public class CNCrushingRecipeGen extends CrushingRecipeGen { .output(1, CNItems.URANIUM_POWDER, 9) ), - RAW_THORIUM_BLOCK = create(() -> CNBlocks.RAW_THORIUM_BLOCK, b -> b + RAW_URANIUM_BLOCK = create(() -> CNBlocks.RAW_URANIUM_BLOCK, b -> b .duration(250) - .output(1, CNItems.THORIUM_DUST, 9) - .output(0.75f, AllItems.EXP_NUGGET, 9) - ), - - RAW_THORIUM_ITEM = create(() -> CNItems.RAW_THORIUM, b -> b - .duration(125) - .output(1, CNItems.THORIUM_DUST, 1) - .output(0.75f, AllItems.EXP_NUGGET, 1) + .output(1, CNItems.URANIUM_POWDER,81) ), RAW_ZINC = create(() -> AllItems.RAW_ZINC, b -> b.duration(250) .output(1, AllItems.CRUSHED_ZINC, 1) - .output(0.75f, AllItems.EXP_NUGGET, 1) - .output(0.25f, CNItems.LEAD_NUGGET,1) + .output(.75f, AllItems.EXP_NUGGET, 1) + .output(.25f, CNItems.LEAD_NUGGET,1) ), + RAW_COPPER = create(() -> Items.RAW_COPPER, b -> b.duration(250) .output(1, AllItems.CRUSHED_COPPER, 1) - .output(0.75f, AllItems.EXP_NUGGET, 1) - .output(0.15f, CNItems.LEAD_NUGGET,1) - ), - - NITRATE = create("nitrate", b -> b - .require(AllPaletteStoneTypes.LIMESTONE.materialTag) - .duration(250) - .output(0.6f, CNItems.NITRATE, 1) - .output(0.4f, CNItems.LEAD_NUGGET, 1) + .output(.75f, AllItems.EXP_NUGGET, 1) + .output(.15f, CNItems.LEAD_NUGGET,1) ) ; - protected GeneratedRecipe mineralRecycling(AllPaletteStoneTypes type, - UnaryOperator>> transform) { - create(Lang.asId(type.name()) + "_recycling", b -> transform.apply(b.require(type.materialTag))); - return create(type.getBaseBlock()::get, transform); - } - public CNCrushingRecipeGen(PackOutput generator) { super(generator, CreateNuclear.MOD_ID); } + protected > GeneratedRecipe createFix(String namespace, Supplier singleIngredient, UnaryOperator> transform) { ProcessingRecipeSerializer serializer = getSerializer(); diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNDeployingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNDeployingRecipeGen.java deleted file mode 100644 index 53d3e8f1d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNDeployingRecipeGen.java +++ /dev/null @@ -1,52 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.data.recipe; - -import com.simibubi.create.AllBlocks; -import com.simibubi.create.api.data.recipe.DeployingRecipeGen; -import net.minecraft.data.PackOutput; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.ItemLike; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CreateNuclear; - -public class CNDeployingRecipeGen extends DeployingRecipeGen { - - GeneratedRecipe REACTOR_ROD_INPUT = deploying("reactor_rod_input_from_hopper_and_reactor_casing", - Items.HOPPER, - CNBlocks.REACTOR_CASING.get(), - CNBlocks.REACTOR_ROD_INPUT.get() - ); - - GeneratedRecipe REACTOR_FLUID_INPUT = deploying("reactor_fluid_input_from_fluid_pipe_and_reactor_casing", - AllBlocks.FLUID_PIPE.asItem(), - CNBlocks.REACTOR_CASING.get(), - CNBlocks.REACTOR_FLUID_INPUT.get() - ); - - GeneratedRecipe REACTOR_OUTPUT = deploying("reactor_output_from_shaft_and_reactor_casing", - AllBlocks.SHAFT.asItem(), - CNBlocks.REACTOR_CASING.get(), - CNBlocks.REACTOR_OUTPUT.get() - ); - - protected GeneratedRecipe deploying(String name, Ingredient ingredient, ItemLike input, ItemLike output) { - return create(CreateNuclear.asResource(name), b -> - b.require(input) - .require(ingredient) - .output(output) - ); - } - - protected GeneratedRecipe deploying(String name, Item ingredient, ItemLike input, ItemLike output) { - return create(CreateNuclear.asResource(name), b -> - b.require(input) - .require(ingredient) - .output(output) - ); - } - - public CNDeployingRecipeGen(PackOutput generator) { - super(generator, CreateNuclear.MOD_ID); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNEnrichedRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNEnrichedRecipeGen.java index 5f46e9f00..b744d577f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNEnrichedRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNEnrichedRecipeGen.java @@ -8,11 +8,10 @@ import net.nuclearteam.createnuclear.CNBlocks; import net.nuclearteam.createnuclear.CNItems; import net.nuclearteam.createnuclear.CreateNuclear; +import net.nuclearteam.createnuclear.api.data.recipe.EnrichedRecipeGen; import java.util.function.Supplier; -import net.nuclearteam.createnuclear.api.data.recipe.EnrichedRecipeGen; - public class CNEnrichedRecipeGen extends EnrichedRecipeGen { GeneratedRecipe diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNItemApplicationRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNItemApplicationRecipeGen.java index 9fb36a0ca..a9172044c 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNItemApplicationRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNItemApplicationRecipeGen.java @@ -1,7 +1,6 @@ package net.nuclearteam.createnuclear.foundation.data.recipe; import com.simibubi.create.AllBlocks; -import com.simibubi.create.AllItems; import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.api.data.recipe.ItemApplicationRecipeGen; import net.minecraft.data.PackOutput; @@ -13,7 +12,6 @@ import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.CreateNuclear; - public class CNItemApplicationRecipeGen extends ItemApplicationRecipeGen { GeneratedRecipe REACTOR_CASING = itemApplication("reactor_casing_from_steel_and_brass_casing", @@ -22,6 +20,17 @@ public class CNItemApplicationRecipeGen extends ItemApplicationRecipeGen { CNBlocks.REACTOR_CASING.get() ); + GeneratedRecipe REACTOR_OUTPUT = itemApplication("reactor_output_from_shaft_and_reactor_casing", + AllBlocks.SHAFT.asItem(), + CNBlocks.REACTOR_CASING.get(), + CNBlocks.REACTOR_OUTPUT.get() + ); + + GeneratedRecipe REACTOR_INPUT = itemApplication("reactor_input_from_hopper_and_reactor_casing", + Items.HOPPER, + CNBlocks.REACTOR_CASING.get(), + CNBlocks.REACTOR_INPUT.get() + ); protected GeneratedRecipe itemApplication(String name, Ingredient ingredient, ItemLike input, ItemLike output) { return create(CreateNuclear.asResource(name), b -> diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMechanicalCraftingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMechanicalCraftingRecipeGen.java index ec898cce8..b73ba516e 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMechanicalCraftingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMechanicalCraftingRecipeGen.java @@ -2,12 +2,11 @@ import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; +import com.simibubi.create.api.data.recipe.MechanicalCraftingRecipeGen; import net.minecraft.data.PackOutput; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.block.Blocks; - -import com.simibubi.create.api.data.recipe.MechanicalCraftingRecipeGen; import net.nuclearteam.createnuclear.*; public class CNMechanicalCraftingRecipeGen extends MechanicalCraftingRecipeGen { @@ -33,21 +32,11 @@ public class CNMechanicalCraftingRecipeGen extends MechanicalCraftingRecipeGen { .patternLine("U ") ), - THORIUM_ROD = create(CNItems.THORIUM_ROD::get) - .recipe(b -> b - .key('U', Ingredient.of(CNItems.THORIUM_INGOT)) - .patternLine("U ") - .patternLine(" U ") - .patternLine(" U ") - .patternLine(" U ") - .patternLine(" U") - ), - REACTOR_MAIN_FRAME = create(CNBlocks.REACTOR_FRAME::get) .recipe(b -> b .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) .key('G', Ingredient.of(CNBlocks.REINFORCED_GLASS)) - .key('B', Ingredient.of(Items.BUCKET)) + .key('B', Ingredient.of(CNFluids.URANIUM.get().getBucket())) .key('S', Ingredient.of(CNTags.forgeItemTag("ingots/steel"))) .patternLine("CCCCC") .patternLine("CSGSC") @@ -56,60 +45,46 @@ public class CNMechanicalCraftingRecipeGen extends MechanicalCraftingRecipeGen { .patternLine("CCCCC") ), - REACTOR_CONTROLLER = create(CNBlocks.REACTOR_CONTROLLER::get) - .recipe(b -> b - .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) - .key('V', Ingredient.of(AllBlocks.ITEM_VAULT)) - .key('O', Ingredient.of(AllBlocks.SMART_OBSERVER)) - .key('T', Ingredient.of(AllItems.ELECTRON_TUBE)) - .key('N', Ingredient.of(Items.NETHERITE_INGOT)) - .key('X', Ingredient.of(Items.NETHER_STAR)) - .patternLine("CCCCC") - .patternLine("CNONC") - .patternLine("CTXTC") - .patternLine("CNVNC") - .patternLine("CCCCC") - ), + REACTOR_CONTROLLER = create(CNBlocks.REACTOR_CONTROLLER::get) + .recipe(b -> b + .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) + .key('V', Ingredient.of(AllBlocks.ITEM_VAULT)) + .key('O', Ingredient.of(AllBlocks.SMART_OBSERVER)) + .key('T', Ingredient.of(AllItems.ELECTRON_TUBE)) + .key('N', Ingredient.of(Items.NETHERITE_INGOT)) + .key('X', Ingredient.of(Items.NETHER_STAR)) + .patternLine("CCCCC") + .patternLine("CNONC") + .patternLine("CTXTC") + .patternLine("CNVNC") + .patternLine("CCCCC") + ), - REACTOR_COOLING_FRAME= create(CNBlocks.REACTOR_COOLER::get) - .recipe(b -> b - .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) - .key('I', Ingredient.of(Blocks.BLUE_ICE)) - .key('G', Ingredient.of(CNBlocks.REINFORCED_GLASS)) - .key('S', Ingredient.of(CNTags.forgeItemTag("ingots/steel"))) - .patternLine("CCCCC") - .patternLine("CSGSC") - .patternLine("CIGIC") - .patternLine("CSGSC") - .patternLine("CCCCC") - ), - - REACTOR_CORE = create(CNBlocks.REACTOR_CORE::get) - .recipe(b -> b - .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) - .key('P', Ingredient.of(AllItems.PRECISION_MECHANISM)) - .key('B', Ingredient.of(CNFluids.URANIUM.get().getBucket())) - .key('S', Ingredient.of(CNTags.forgeItemTag("ingots/steel"))) - .patternLine("CCCCC") - .patternLine("CPSPC") - .patternLine("CSBSC") - .patternLine("CPSPC") - .patternLine("CCCCC") - ), - - REACTOR_ALARM = create(CNBlocks.REACTOR_ALARM::get) - .recipe(b -> b - .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) - .key('N', Ingredient.of(Blocks.NOTE_BLOCK)) - .key('R', Ingredient.of(Blocks.REPEATER)) - .key('L', Ingredient.of(Items.CLOCK)) - .patternLine("CCCCC") - .patternLine("CNRNC") - .patternLine("CRLRC") - .patternLine("CNRNC") - .patternLine("CCCCC") - ); + REACTOR_COOLING_FRAME= create(CNBlocks.REACTOR_COOLER::get) + .recipe(b -> b + .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) + .key('I', Ingredient.of(Blocks.BLUE_ICE)) + .key('G', Ingredient.of(CNBlocks.REINFORCED_GLASS)) + .key('S', Ingredient.of(CNTags.forgeItemTag("ingots/steel"))) + .patternLine("CCCCC") + .patternLine("CSGSC") + .patternLine("CIGIC") + .patternLine("CSGSC") + .patternLine("CCCCC") + ), + REACTOR_CORE = create(CNBlocks.REACTOR_CORE::get) + .recipe(b -> b + .key('C', Ingredient.of(CNBlocks.REACTOR_CASING)) + .key('P', Ingredient.of(AllItems.PRECISION_MECHANISM)) + .key('B', Ingredient.of(CNFluids.URANIUM.get().getBucket())) + .key('S', Ingredient.of(CNTags.forgeItemTag("ingots/steel"))) + .patternLine("CCCCC") + .patternLine("CPSPC") + .patternLine("CSBSC") + .patternLine("CPSPC") + .patternLine("CCCCC") + ); public CNMechanicalCraftingRecipeGen(PackOutput output) { super(output, CreateNuclear.MOD_ID); diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMixingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMixingRecipeGen.java index 293ddd98a..074614fdb 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMixingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNMixingRecipeGen.java @@ -1,15 +1,20 @@ package net.nuclearteam.createnuclear.foundation.data.recipe; +import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.api.data.recipe.MixingRecipeGen; -import com.simibubi.create.content.processing.recipe.HeatCondition; +import com.simibubi.create.content.processing.recipe.ProcessingRecipe; +import com.simibubi.create.content.processing.recipe.ProcessingRecipeBuilder; +import com.simibubi.create.content.processing.recipe.ProcessingRecipeSerializer; import net.minecraft.data.PackOutput; -import net.minecraft.world.item.Items; +import net.minecraft.resources.ResourceLocation; import net.minecraftforge.common.Tags; import net.nuclearteam.createnuclear.CNFluids; import net.nuclearteam.createnuclear.CNItems; import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.CreateNuclear; +import java.util.function.Supplier; +import java.util.function.UnaryOperator; public class CNMixingRecipeGen extends MixingRecipeGen { @@ -23,24 +28,13 @@ public class CNMixingRecipeGen extends MixingRecipeGen { URANIUM_FLUID = create("uranium_fluid", b -> b .require(CNTags.forgeItemTag("dusts/uranium")) .output(CNFluids.URANIUM.get(), 25) + ) + ; - ), - - THORIUM_FLUID = create("thorium_fluid", b -> b - .require(CNTags.forgeItemTag("dusts/thorium")) - .output(CNFluids.THORIUM.get(), 25) - .requiresHeat(HeatCondition.HEATED) - ), - NITROGEN = create("liquid_nitrogen", b -> b - .require(CNItems.COOLED_NITROGEN_CONCENTRATE) - .duration(20) - .require(Items.ICE) - .output(CNFluids.LIQUID_NITROGEN.get(), 100) - ); - ; public CNMixingRecipeGen(PackOutput generator) { super(generator, CreateNuclear.MOD_ID); } + } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNPressingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNPressingRecipeGen.java index 8c1bd75ca..b1cf21dff 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNPressingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNPressingRecipeGen.java @@ -11,12 +11,11 @@ public class CNPressingRecipeGen extends PressingRecipeGen { GeneratedRecipe GRAPHENE = create("graphene", b -> b - .require(Ingredient.of(CNTags.forgeItemTag("dusts/coal"))) + .require(Ingredient.of(CNTags.forgeItemTag("coal_dusts"))) .output(CNItems.GRAPHENE) ) ; - public CNPressingRecipeGen(PackOutput generator) { super(generator, CreateNuclear.MOD_ID); } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNProcessingRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNProcessingRecipeGen.java index aa8ea107c..4e34b5ffa 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNProcessingRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNProcessingRecipeGen.java @@ -1,29 +1,15 @@ package net.nuclearteam.createnuclear.foundation.data.recipe; -import com.simibubi.create.Create; -import com.simibubi.create.content.processing.recipe.ProcessingRecipe; -import com.simibubi.create.content.processing.recipe.ProcessingRecipeBuilder; -import com.simibubi.create.content.processing.recipe.ProcessingRecipeSerializer; -import com.simibubi.create.foundation.data.recipe.CreateRecipeProvider; -import com.simibubi.create.foundation.recipe.IRecipeTypeInfo; -import net.createmod.catnip.platform.CatnipServices; import com.simibubi.create.api.data.recipe.ProcessingRecipeGen; import net.minecraft.data.CachedOutput; import net.minecraft.data.DataGenerator; import net.minecraft.data.DataProvider; import net.minecraft.data.PackOutput; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.ItemLike; -import net.nuclearteam.createnuclear.CreateNuclear; import net.minecraft.data.recipes.RecipeProvider; import java.util.ArrayList; import java.util.List; import java.util.concurrent.CompletableFuture; -import java.util.function.Supplier; -import java.util.function.UnaryOperator; - public abstract class CNProcessingRecipeGen extends RecipeProvider { @@ -36,9 +22,8 @@ public static void registerAll(DataGenerator gen, PackOutput output) { GENERATORS.add(new CNMixingRecipeGen(output)); GENERATORS.add(new CNPressingRecipeGen(output)); GENERATORS.add(new CNEnrichedRecipeGen(output)); - GENERATORS.add(new CNSnowPowderRecipeGen(output)); GENERATORS.add(new CNWashingRecipeGen(output)); - GENERATORS.add(new CNDeployingRecipeGen(output)); + gen.addProvider(true, new DataProvider() { diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNShapelessRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNShapelessRecipeGen.java new file mode 100644 index 000000000..f239e93a5 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNShapelessRecipeGen.java @@ -0,0 +1,140 @@ +package net.nuclearteam.createnuclear.foundation.data.recipe; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.simibubi.create.AllRecipeTypes; +import com.simibubi.create.api.data.recipe.BaseRecipeProvider; +import com.simibubi.create.foundation.recipe.IRecipeTypeInfo; +import com.tterrag.registrate.util.entry.ItemProviderEntry; +import net.createmod.catnip.platform.CatnipServices; +import net.minecraft.advancements.critereon.ItemPredicate; +import net.minecraft.data.PackOutput; +import net.minecraft.data.recipes.*; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.TagKey; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.crafting.RecipeSerializer; +import net.minecraft.world.level.ItemLike; +import net.minecraftforge.common.crafting.CraftingHelper; +import net.minecraftforge.common.crafting.conditions.ICondition; +import net.minecraftforge.common.crafting.conditions.ModLoadedCondition; +import net.minecraftforge.common.crafting.conditions.NotCondition; +import net.nuclearteam.createnuclear.CreateNuclear; + +import java.util.ArrayList; +import java.util.List; +import java.util.function.Supplier; + +@SuppressWarnings("unused") +public class CNShapelessRecipeGen extends BaseRecipeProvider { + + String currentFolder = ""; + + String enterFolder(String foldedr) { + currentFolder = foldedr; + return currentFolder; + } + + GeneratedRecipeBuilder create(Supplier result) { + return new GeneratedRecipeBuilder(currentFolder, result); + } + + GeneratedRecipeBuilder create(ResourceLocation result) { + return new GeneratedRecipeBuilder(currentFolder, result); + } + + GeneratedRecipeBuilder create(ItemProviderEntry result) { + return create(result::get); + } + + + class GeneratedRecipeBuilder { + + private String path; + private String suffix; + private Supplier result; + private ResourceLocation compatDatagenOutput; + List recipeConditions; + private RecipeCategory category; + + private Supplier unlockedBy; + private int amount; + + private GeneratedRecipeBuilder(String path) { + this.path = path; + this.recipeConditions = new ArrayList<>(); + this.suffix = ""; + this.amount = 1; + this.category = RecipeCategory.MISC; + } + + public GeneratedRecipeBuilder(String path, Supplier result) { + this(path); + this.result = result; + } + + public GeneratedRecipeBuilder(String path, ResourceLocation result) { + this(path); + this.compatDatagenOutput = result; + } + + GeneratedRecipeBuilder returns(int amount) { + this.amount = amount; + return this; + } + + GeneratedRecipeBuilder unlockedBy(Supplier item) { + this.unlockedBy = () -> ItemPredicate.Builder.item() + .of(item.get()) + .build(); + return this; + } + + GeneratedRecipeBuilder unlockedByTag(Supplier> tag) { + this.unlockedBy = () -> ItemPredicate.Builder.item() + .of(tag.get()) + .build(); + return this; + } + + GeneratedRecipeBuilder whenModLoaded(String modid) { + return withCondition(new ModLoadedCondition(modid)); + } + + GeneratedRecipeBuilder whenModMissing(String modid) { + return withCondition(new NotCondition(new ModLoadedCondition(modid))); + } + + GeneratedRecipeBuilder withCondition(ICondition condition) { + recipeConditions.add(condition); + return this; + } + + GeneratedRecipeBuilder withSuffix(String suffix) { + this.suffix = suffix; + return this; + } + + GeneratedRecipeBuilder withCategory(RecipeCategory category) { + this.category = category; + return this; + } + + private ResourceLocation createSimpleLocation(String recipeType) { + return CreateNuclear.asResource(recipeType + "/" + getRegistryName().getPath() + suffix); + } + + private ResourceLocation createLocation(String recipeType) { + return CreateNuclear.asResource(recipeType + "/" + path + "/" + getRegistryName().getPath() + suffix); + } + + private ResourceLocation getRegistryName() { + return compatDatagenOutput == null ? CatnipServices.REGISTRIES.getKeyOrThrow(result.get() + .asItem()) : compatDatagenOutput; + } + } + + public CNShapelessRecipeGen(PackOutput output) { + super(output, CreateNuclear.MOD_ID); + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNSnowPowderRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNSnowPowderRecipeGen.java deleted file mode 100644 index 614f1481a..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNSnowPowderRecipeGen.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.data.recipe; - -import net.createmod.catnip.platform.CatnipServices; -import net.minecraft.data.PackOutput; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.level.ItemLike; -import net.nuclearteam.createnuclear.CNFluids; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.data.recipe.SnowPowderRecipeGen; - -import java.util.function.Supplier; - -public class CNSnowPowderRecipeGen extends SnowPowderRecipeGen { - - GeneratedRecipe - COOLED_NITROGEN_CONCENTRATE = convert(CNItems.NITROGEN_CONCENTRATE, CNItems.COOLED_NITROGEN_CONCENTRATE) - ; - - public GeneratedRecipe convert(ItemLike input, ItemLike result) { - return convert(() -> Ingredient.of(input), () -> result); - } - - public GeneratedRecipe convert(Supplier input, Supplier result) { - return create(CreateNuclear.asResource(CatnipServices.REGISTRIES.getKeyOrThrow(result.get() - .asItem()) - .getPath()), - p -> p.withItemIngredients(input.get()) - .output(result.get())); - } - - public CNSnowPowderRecipeGen(PackOutput generator) { - super(generator, CreateNuclear.MOD_ID); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNStandardRecipeGen.java b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNStandardRecipeGen.java index 488092318..f146726f9 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNStandardRecipeGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/data/recipe/CNStandardRecipeGen.java @@ -4,14 +4,17 @@ import com.google.common.collect.ImmutableList; import com.google.gson.JsonArray; import com.google.gson.JsonObject; +import com.simibubi.create.AllBlocks; import com.simibubi.create.AllItems; import com.simibubi.create.api.data.recipe.BaseRecipeProvider; +import com.simibubi.create.foundation.data.recipe.CreateRecipeProvider; import com.tterrag.registrate.util.entry.ItemProviderEntry; import net.createmod.catnip.platform.CatnipServices; import net.minecraft.advancements.critereon.ItemPredicate; import net.minecraft.data.PackOutput; 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.Item; import net.minecraft.world.item.Items; @@ -20,6 +23,7 @@ import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.Blocks; +import net.minecraftforge.common.Tags; import net.minecraftforge.common.crafting.CraftingHelper; import net.minecraftforge.common.crafting.conditions.ICondition; import net.nuclearteam.createnuclear.CNBlocks; @@ -27,6 +31,7 @@ import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.CNTags.CNItemTags; import net.nuclearteam.createnuclear.CreateNuclear; +import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem; import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem; import java.util.List; @@ -62,21 +67,19 @@ public class CNStandardRecipeGen extends BaseRecipeProvider { ImmutableList.of(() -> CNTags.forgeItemTag("nuggets/lead"), () -> CNTags.forgeItemTag("ingots/lead"), () -> CNTags.forgeItemTag("storage_blocks/lead"))), STEEL_COMPACTING = metalCompacting(ImmutableList.of(CNItems.STEEL_NUGGET, CNItems.STEEL_INGOT, CNBlocks.STEEL_BLOCK), - ImmutableList.of(() -> CNTags.forgeItemTag("nuggets/steel"), () -> CNTags.forgeItemTag("ingots/steel"), () -> CNTags.forgeItemTag("storage_blocks/steel"))), + ImmutableList.of(() -> CNTags.forgeItemTag("nuggets/steel"), () -> CNTags.forgeItemTag("ingots/steel"), () -> CNTags.forgeItemTag("storage_blocks/steel"))) - THORIUM_COMPACTING = metalCompacting(ImmutableList.of(CNItems.THORIUM_NUGGET, CNItems.THORIUM_INGOT, CNBlocks.THORIUM_BLOCK), - ImmutableList.of(() -> CNTags.forgeItemTag("nuggets/thorium"), () -> CNTags.forgeItemTag("ingots/thorium"), () -> CNTags.forgeItemTag("storage_blocks/thorium"))) ; private final String BLAST_FURNACE = enterFolder("blast_furnace"); GeneratedRecipe - URANIUM_ORE_TO_URANIUM_POWDER = blastFurnaceRecipeTags(() -> CNItems.RAW_URANIUM::get, () -> CNTags.forgeItemTag("ores/uranium"), "_for_uranium_ore", 4), - RAW_LEAD_ORES = blastFurnaceRecipeTags(() -> CNItems.LEAD_INGOT::get, () -> CNTags.forgeItemTag("ores/lead"), "_for_lead_ore", 1), + URANIUM_ORE_TO_URANIUM_POWDER = blastFurnaceRecipeTags(() -> CNItems.RAW_URANIUM::get, () -> CNItemTags.URANIUM_ORES.tag, "_for_uranium_ore", 4), + RAW_LEAD_ORES = blastFurnaceRecipeTags(() -> CNItems.LEAD_INGOT::get, () -> CNItemTags.LEAD_ORES.tag, "_for_lead_ore", 1), RAW_LEAD = blastFurnaceRecipeTags(CNItems.LEAD_INGOT::get, () -> CNTags.forgeItemTag("raw_materials/lead"), "_for_raw_lead", 1), - CRUSHED_RAW_LEAD_TO_LEAD_BLAST_FURNACE = blastFurnaceRecipe(CNItems.LEAD_INGOT::get, AllItems.CRUSHED_LEAD::get, "_for_lead", 1), - NITROGEN_CONCENTRATE = blastFurnaceRecipe(CNItems.NITROGEN_CONCENTRATE::get, CNItems.NITRATE::get, "_for_nitrogen_concentrate", 1) + CRUSHED_RAW_LEAD_TO_LEAD_BLAST_FURNACE = blastFurnaceRecipe(CNItems.LEAD_INGOT::get, AllItems.CRUSHED_LEAD::get, "_for_lead", 1) ; + String currentFolder = ""; String enterFolder(String foldedr) { @@ -223,6 +226,7 @@ GeneratedRecipeBuilder withCategory(RecipeCategory category) { return this; } + // FIXME 5.1 refactor - recipe categories as markers instead of sections? GeneratedRecipe viaShaped(UnaryOperator builder) { return register(consumer -> { ShapedRecipeBuilder b = builder.apply(ShapedRecipeBuilder.shaped(category, result.get(), amount)); @@ -347,7 +351,7 @@ private GeneratedRecipe create(RecipeSerializer b.save(result -> { consumer.accept( - isOtherMod ? new ModdedCookingRecipeResult(result, compatDatagenOutput, List.of()) + isOtherMod ? new ModdedCookingRecipeResult(result, compatDatagenOutput, null ) : result); }, createSimpleLocation(CatnipServices.REGISTRIES.getKeyOrThrow(serializer) .getPath())); @@ -386,11 +390,9 @@ public void serializeRecipeData(JsonObject object) { wrapped.serializeRecipeData(object); object.addProperty("result", outputOverride.toString()); - if (conditions != null && !conditions.isEmpty()) { - JsonArray conds = new JsonArray(); - conditions.forEach(c -> conds.add(CraftingHelper.serialize(c))); - object.add("conditions", conds); - } + JsonArray conds = new JsonArray(); + conditions.forEach(c -> conds.add(CraftingHelper.serialize(c))); + object.add("conditions", conds); } } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/CNClientEvent.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CNClientEvent.java index efb512605..f7b29e903 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/CNClientEvent.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CNClientEvent.java @@ -1,14 +1,11 @@ package net.nuclearteam.createnuclear.foundation.events; import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.client.event.EntityRenderersEvent; import net.minecraftforge.client.event.RegisterGuiOverlaysEvent; import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod.EventBusSubscriber; -import net.nuclearteam.createnuclear.CNEntityType; import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorModel; import net.nuclearteam.createnuclear.foundation.events.overlay.IrradiatedOverlayRendererVision; @EventBusSubscriber(modid = CreateNuclear.MOD_ID, bus = EventBusSubscriber.Bus.MOD, value = Dist.CLIENT) @@ -21,8 +18,5 @@ public static void onRegisterGui(RegisterGuiOverlaysEvent event) { event.registerAbove(VanillaGuiOverlay.HELMET.id(), "irradiated_vision", IrradiatedOverlayRendererVision.OVERLAY); } - @SubscribeEvent - public static void registerLayers(EntityRenderersEvent.RegisterLayerDefinitions event) { - CNEntityType.registerModelLayer(event); - } + } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/ClientEvents.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/ClientEvents.java deleted file mode 100644 index e9df5892e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/ClientEvents.java +++ /dev/null @@ -1,104 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.events; - -import net.minecraft.client.Minecraft; -import net.minecraft.util.RandomSource; -import net.minecraft.world.entity.Entity; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.client.event.RenderPlayerEvent; -import net.minecraftforge.client.event.ViewportEvent; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.world.entity.EquipmentSlot; -import net.minecraft.world.entity.player.Player; -import net.nuclearteam.createnuclear.CNClientProxy; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.equipment.armor.AntiRadiationArmorItem; -import net.nuclearteam.createnuclear.foundation.mixin.client.CameraAccessor; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -@Mod.EventBusSubscriber(modid = CreateNuclear.MOD_ID, value = Dist.CLIENT) -public class ClientEvents { - - /** - * Ticks down the nuke flash/darken timers, once per client tick. - */ - @SubscribeEvent - public static void onClientTick(TickEvent.ClientTickEvent event) { - if (event.phase == TickEvent.Phase.END) { - - // Store the previous value for smooth interpolation of the flash - CNClientProxy.prevNukeFlashAmount = CNClientProxy.nukeFlashAmount; - - // Count down the sky-darkening timer - if (CNClientProxy.renderNukeSkyDarkFor > 0) { - CNClientProxy.renderNukeSkyDarkFor--; - } - - // Ramp the white flash up while active, then fade it back out - if (CNClientProxy.renderNukeFlashFor > 0) { - if (CNClientProxy.nukeFlashAmount < 1F) { - CNClientProxy.nukeFlashAmount = Math.min(CNClientProxy.nukeFlashAmount + 0.4F, 1F); - } - CNClientProxy.renderNukeFlashFor--; - } else if (CNClientProxy.nukeFlashAmount > 0F) { - CNClientProxy.nukeFlashAmount = Math.max(CNClientProxy.nukeFlashAmount - 0.05F, 0F); - } - } - } - - /** - * Shakes the player's camera while a nuke explosion is active. - */ - @SubscribeEvent - public static void computeCameraAngles(ViewportEvent.ComputeCameraAngles event) { - Entity player = Minecraft.getInstance().getCameraEntity(); - float partialTick = Minecraft.getInstance().getPartialTick(); - - // Shake at 1.5F while the sky is darkened (nuke active), otherwise no shake - float tremorAmount = CNClientProxy.renderNukeSkyDarkFor > 0 ? 1.5F : 0F; - - if (player != null && CNConfigs.client().screenShaking.get()) { - if (tremorAmount > 0) { - // Generate random offsets for the shake, once per tick - if (CNClientProxy.lastTremorTick != player.tickCount) { - RandomSource rng = player.level().random; - CNClientProxy.randomTremorOffsets[0] = rng.nextFloat(); - CNClientProxy.randomTremorOffsets[1] = rng.nextFloat(); - CNClientProxy.randomTremorOffsets[2] = rng.nextFloat(); - CNClientProxy.lastTremorTick = player.tickCount; - } - - // Scale by Minecraft's screen-effect accessibility setting - double intensity = tremorAmount * Minecraft.getInstance().options.screenEffectScale().get(); - - // Physically offset the camera - ((CameraAccessor) event.getCamera()).callMove( - CNClientProxy.randomTremorOffsets[0] * 0.2F * intensity, - CNClientProxy.randomTremorOffsets[1] * 0.2F * intensity, - CNClientProxy.randomTremorOffsets[2] * 0.5F * intensity - ); - } - } - } - - @SubscribeEvent - public static void onRenderPlayerPre(RenderPlayerEvent.Pre event) { - Player player = event.getEntity(); - PlayerModel model = event.getRenderer().getModel(); - - if (player.getItemBySlot(EquipmentSlot.HEAD).getItem() instanceof AntiRadiationArmorItem) { - model.hat.visible = false; - } - if (player.getItemBySlot(EquipmentSlot.CHEST).getItem() instanceof AntiRadiationArmorItem) { - model.jacket.visible = false; - model.rightSleeve.visible = false; - model.leftSleeve.visible = false; - } - if (player.getItemBySlot(EquipmentSlot.LEGS).getItem() instanceof AntiRadiationArmorItem) { - model.rightPants.visible = false; - model.leftPants.visible = false; - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEventClients.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEventClients.java new file mode 100644 index 000000000..d79c14042 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEventClients.java @@ -0,0 +1,16 @@ +package net.nuclearteam.createnuclear.foundation.events; + +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.client.event.EntityRenderersEvent; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod.EventBusSubscriber; +import net.minecraftforge.fml.common.Mod.EventBusSubscriber.Bus; +import net.nuclearteam.createnuclear.CNEntityType; + +@EventBusSubscriber(bus = Bus.MOD, value = Dist.CLIENT) +public class CommentEventClients { + @SubscribeEvent + public static void registerLayers(EntityRenderersEvent.RegisterLayerDefinitions event) { + CNEntityType.registerModelLayer(event); + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEvents.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEvents.java index 3bcbe1fb1..76d0e9794 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEvents.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/CommentEvents.java @@ -1,15 +1,9 @@ package net.nuclearteam.createnuclear.foundation.events; -import net.minecraft.world.entity.*; -import net.minecraftforge.event.AttachCapabilitiesEvent; import net.minecraftforge.event.TickEvent.Phase; import net.minecraftforge.event.TickEvent.ServerTickEvent; -import net.minecraftforge.event.entity.EntityAttributeModificationEvent; -import net.minecraftforge.event.entity.living.LivingEvent.LivingTickEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import net.nuclearteam.createnuclear.*; -import net.nuclearteam.createnuclear.content.radiation.capability.RadiationCapability; @Mod.EventBusSubscriber public class CommentEvents { @@ -17,26 +11,4 @@ public class CommentEvents { public static void onServerTick(ServerTickEvent event) { if (event.phase == Phase.START) return; } - - @SubscribeEvent - public static void attachCapabilities(AttachCapabilitiesEvent event) { - RadiationCapability.attach(event); - } - - @SubscribeEvent - public static void onLivingEntityTick(LivingTickEvent event) { - RadiationCapability.onLivingEntityTick(event); - } - - @Mod.EventBusSubscriber(modid = CreateNuclear.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) - public static class RadiationEvent { - @SubscribeEvent - public static void onEntityAttribute(EntityAttributeModificationEvent event) { - for (EntityType type : event.getTypes()) { - event.add(type, CNAttributes.IRRADIATED_RESISTANCE.get()); - } - } - } - - } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/HudRenderer.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/HudRenderer.java index 4d94e48c7..2baf9f46c 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/HudRenderer.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/HudRenderer.java @@ -1,15 +1,19 @@ package net.nuclearteam.createnuclear.foundation.events; import net.minecraftforge.client.event.RegisterGuiOverlaysEvent; +import net.nuclearteam.createnuclear.foundation.events.overlay.EventTextOverlay; import net.nuclearteam.createnuclear.foundation.events.overlay.HelmetOverlay; import net.nuclearteam.createnuclear.foundation.events.overlay.HudOverlay; +import net.nuclearteam.createnuclear.foundation.events.overlay.RadiationOverlay; import java.util.Comparator; import java.util.List; public class HudRenderer { private static final List overlays = List.of( - new HelmetOverlay() + new HelmetOverlay(), + //new RadiationOverlay(), + new EventTextOverlay() ); public void onHudRender(RegisterGuiOverlaysEvent event) { diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/RodsTooltipHandler.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/RodsTooltipHandler.java deleted file mode 100644 index b2b2c9d9c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/RodsTooltipHandler.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.events; - -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.event.entity.player.ItemTooltipEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.foundation.item.RodsStats; - -@Mod.EventBusSubscriber(modid = CreateNuclear.MOD_ID, value = Dist.CLIENT, bus = Mod.EventBusSubscriber.Bus.FORGE) -public class RodsTooltipHandler { - @SubscribeEvent - public static void onItemTooltip(ItemTooltipEvent event) { - ItemStack stack = event.getItemStack(); - Item item = stack.getItem(); - Player player = event.getEntity(); - - if (player == null) return; - - ResourceLocation id = ForgeRegistries.ITEMS.getKey(item); - // Mod items already get their rod tooltip via Registrate's setTooltipModifierFactory - // (CreateNuclear.java:48). This handler only serves EXTERNAL items (other mods or - // datapack-defined RodTypes resolved at runtime via RodType.resolveRodType), which - // setTooltipModifierFactory cannot cover. Do NOT remove/invert: doing so double-tooltips mod rods. - if (id != null && CreateNuclear.MOD_ID.equals(id.getNamespace())) return; - - RodsStats rodsStats = RodsStats.create(item); - rodsStats.modify(event); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EasingHudOverlay.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EasingHudOverlay.java new file mode 100644 index 000000000..217e85928 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EasingHudOverlay.java @@ -0,0 +1,41 @@ +package net.nuclearteam.createnuclear.foundation.events.overlay; + +import net.minecraft.client.gui.GuiGraphics; +import net.minecraftforge.client.gui.overlay.ForgeGui; + +/** + * Abstract HUD overlay with a smooth fade-in/out (ease-in-out) effect. + */ +public abstract class EasingHudOverlay implements HudOverlay { + private float progress = 0f; + protected float fadeSpeed = 0.03f; + + @Override + public void render(ForgeGui gui, GuiGraphics graphics, float partialTicks, int width, int height) { + // Update progress based on the active state + progress = isActive() + ? Math.min(1f, progress + fadeSpeed) + : Math.max(0f, progress - fadeSpeed); + if (progress > 0f) { + renderWithAlpha(graphics, partialTicks, ease(progress)); + } + } + + /** + * Smoothstep interpolation (ease-in-out). + * @param t linear progress [0,1] + * @return eased value + */ + private float ease(float t) { + return t * t * (3f - 2f * t); + } + + /** + * Renders the overlay with a specific alpha. + * Subclasses implement the actual drawing here. + * @param graphics the GUI graphics context + * @param partialTicks frame interpolation value + * @param alpha transparency level [0,1] + */ + protected abstract void renderWithAlpha(GuiGraphics graphics, float partialTicks, float alpha); +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EventTextOverlay.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EventTextOverlay.java new file mode 100644 index 000000000..035de48c2 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/EventTextOverlay.java @@ -0,0 +1,65 @@ +package net.nuclearteam.createnuclear.foundation.events.overlay; + +import net.minecraft.ChatFormatting; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceLocation; +import net.minecraftforge.client.gui.overlay.ForgeGui; +import net.minecraftforge.client.gui.overlay.IGuiOverlay; +import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; +import net.nuclearteam.createnuclear.CreateNuclear; + +/** + * HUD overlay for displaying localized text when a specific event occurs. + */ +public class EventTextOverlay implements HudOverlay { + private static int timer = 0; + + /** + * Called via a network packet to activate the overlay for a specific duration. + * @param displayDuration duration in ticks + */ + public static void triggerEvent(int displayDuration) { + timer = displayDuration; + } + + @Override + public ResourceLocation getAfterOverlay() { + return VanillaGuiOverlay.HELMET.id(); + } + + @Override + public String getOverlayId() { + return "event_text_overlay"; + } + + @Override + public boolean isActive() { + return timer > 0 && false; + } + + @Override + public void render(ForgeGui gui, GuiGraphics graphics, float partialTicks, int width, int height) { + if (!isActive()) return; + if (timer-- <= 0) return; + CreateNuclear.LOGGER.warn("hum EventTextOverlay: {}", timer); + LocalPlayer player = Minecraft.getInstance().player; + if (player == null) return; + Component text = Component.translatable("overlay.event_message", timer).withStyle(ChatFormatting.RED); + int widths = graphics.guiWidth(); + int x = (widths - Minecraft.getInstance().font.width(text)) / 2; + graphics.drawString(Minecraft.getInstance().font, text, x, 10, 0xFFFFFF); + } + + @Override + public int getPriority() { + return 300; // render on top of other overlays + } + + @Override + public IGuiOverlay getOverlay() { + return this::render; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/HelmetOverlay.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/HelmetOverlay.java index 0eb8e35f2..ad2e828ad 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/HelmetOverlay.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/HelmetOverlay.java @@ -9,7 +9,6 @@ import net.minecraftforge.client.gui.overlay.ForgeGui; import net.minecraftforge.client.gui.overlay.IGuiOverlay; import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; -import net.nuclearteam.createnuclear.CNTags; import net.nuclearteam.createnuclear.CNTags.CNItemTags; import net.nuclearteam.createnuclear.CreateNuclear; import net.nuclearteam.createnuclear.foundation.utility.RenderHelper; @@ -25,6 +24,7 @@ public class HelmetOverlay implements HudOverlay { CreateNuclear.asResource("textures/misc/helmet_vision/helmet_crack2.png"), CreateNuclear.asResource("textures/misc/helmet_vision/helmet_almost_broken.png") }; + private static final float[] COVERAGE_FACTORS = {.5f, 1f, 1.05f, 1.45f, 1.98f}; private static final int BASE_PRIORITY = 50; @Override @@ -42,7 +42,7 @@ public boolean isActive() { LocalPlayer player = Minecraft.getInstance().player; if (player == null) return false; ItemStack helmet = player.getInventory().getArmor(EquipmentSlot.HEAD.getIndex()); - return !helmet.isEmpty() && helmet.is(CNItemTags.ANTI_RADIATION_ARMOR.tag) && helmet.is(CNTags.forgeItemTag("armors/helmets")); + return !helmet.isEmpty() && helmet.is(CNItemTags.ANTI_RADIATION_HELMET_FULL_DYE.tag); } @Override @@ -63,6 +63,9 @@ public void render(ForgeGui gui, GuiGraphics graphics, float partialTicks, int w : durabilityRatio >= 0.25f ? 3 : 4; + // Update radiation coverage based on helmet condition + RadiationOverlay.setCoverage(COVERAGE_FACTORS[index]); + // Render helmet overlay texture RenderHelper.renderFirstPersonOverlay(graphics, HELMET_TEXTURES[index], 1f, 1f); // Render the hotbar behind the helmet overlay diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/IrradiatedOverlayRendererVision.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/IrradiatedOverlayRendererVision.java index 095656862..5354f41a3 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/IrradiatedOverlayRendererVision.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/IrradiatedOverlayRendererVision.java @@ -20,15 +20,8 @@ public class IrradiatedOverlayRendererVision { public static void renderOverlay(ForgeGui gui, GuiGraphics graphics, float partialTicks, int width, int height) { Minecraft mc = Minecraft.getInstance(); - GameType playerMode = mc.gameMode.getPlayerMode(); - // Skip the irradiated vision overlay in creative/spectator: the effect icon still - // shows in the HUD so the player stays aware, but the screen overlay is not applied. - if (mc.options.hideGui || playerMode == GameType.SPECTATOR || playerMode == GameType.CREATIVE) { - irradiatedVisionAlpha = 0.0f; - return; - } + if (mc.options.hideGui || mc.gameMode.getPlayerMode() == GameType.SPECTATOR) return; LocalPlayer localPlayer = mc.player; - if (localPlayer == null) return; RenderSystem.enableBlend(); if (localPlayer.hasEffect(CNEffects.RADIATION.get())) { irradiatedVisionAlpha = Math.min(1.0f, irradiatedVisionAlpha + 0.01f); diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/RadiationOverlay.java b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/RadiationOverlay.java new file mode 100644 index 000000000..a9999507e --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/overlay/RadiationOverlay.java @@ -0,0 +1,61 @@ +package net.nuclearteam.createnuclear.foundation.events.overlay; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.resources.ResourceLocation; +import net.minecraftforge.client.gui.overlay.ForgeGui; +import net.minecraftforge.client.gui.overlay.IGuiOverlay; +import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; +import net.nuclearteam.createnuclear.CNEffects; +import net.nuclearteam.createnuclear.CreateNuclear; +import net.nuclearteam.createnuclear.foundation.utility.RenderHelper; + +/** + * HUD overlay for radiation effect when the player is irradiated. + */ +public class RadiationOverlay extends EasingHudOverlay { + private static final ResourceLocation RADIATION_TEXTURE = + CreateNuclear.asResource("textures/misc/irradiated_vision/irradiated_vision.png"); + private static float coverage = 1f; + + /** + * Updates the coverage scale for the radiation effect. + * @param newCoverage scale factor (1.0 = normal size) + */ + public static void setCoverage(float newCoverage) { + coverage = newCoverage; + } + + @Override + public ResourceLocation getAfterOverlay() { + return VanillaGuiOverlay.HELMET.id(); + } + + @Override + public String getOverlayId() { + return "radiation_overlay"; + } + + @Override + public boolean isActive() { + LocalPlayer player = Minecraft.getInstance().player; + return player != null && player.hasEffect(CNEffects.RADIATION.get()); + } + + @Override + protected void renderWithAlpha(GuiGraphics graphics, float partialTicks, float alpha) { + // Render radiation overlay with dynamic coverage and alpha + RenderHelper.renderTextureOverlay(graphics, RADIATION_TEXTURE, Math.round(alpha * coverage)); + } + + @Override + public int getPriority() { + return 100; // Fixed background priority for radiation effect + } + + @Override + public IGuiOverlay getOverlay() { + return this::render; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/events/possible code b/src/main/java/net/nuclearteam/createnuclear/foundation/events/possible code new file mode 100644 index 000000000..87cf86c20 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/events/possible code @@ -0,0 +1,66 @@ +/* + * META-INF/services/com.tonpackage.HudOverlay + * ------------------------------------------- + * Liste des implémentations de HudOverlay à charger via ServiceLoader + */ +com.tonpackage.HelmetOverlay +com.tonpackage.PotionOverlay +com.tonpackage.RadiationOverlay + +// -------------------------------------------------------- +package com.tonpackage; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.ServiceLoader; + +/** + * Chargement dynamique de tous les HudOverlay via Java SPI (ServiceLoader) + */ +public class HudOverlayRegistry { + private static final List ALL = new ArrayList<>(); + + static { + ServiceLoader.load(HudOverlay.class) + .forEach(ALL::add); + } + + /** + * Retourne la liste non modifiable de tous les overlays chargés. + */ + public static List getAll() { + return Collections.unmodifiableList(ALL); + } +} + +// -------------------------------------------------------- +package com.tonpackage; + +import net.minecraftforge.client.event.RenderGuiOverlayEvent; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; + +import java.util.Comparator; + +@Mod.EventBusSubscriber(value = Dist.CLIENT) +public class CNClientEvent { + + @SubscribeEvent + public static void onRenderGuiOverlay(RenderGuiOverlayEvent.Post event) { + // On ne rend qu'après l'overlay "helmet" + if (!event.getOverlay().id().equals(VanillaGuiOverlay.HELMET.id())) return; + + GuiGraphics gfx = event.getGuiGraphics(); + float pt = event.getPartialTick(); + + HudOverlayRegistry.getAll().stream() + .filter(HudOverlay::isActive) + .filter(o -> o.getAfterOverlay().equals(VanillaGuiOverlay.HELMET.id())) + .sorted(Comparator.comparingInt(HudOverlay::getPriority).reversed()) + .forEach(o -> o.render(gfx, pt)); + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/item/DyedItemsList.java b/src/main/java/net/nuclearteam/createnuclear/foundation/item/DyedItemsList.java index 6a74ad09c..b93bd53c7 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/item/DyedItemsList.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/item/DyedItemsList.java @@ -7,15 +7,7 @@ import java.util.Arrays; import java.util.Iterator; import java.util.NoSuchElementException; -import java.util.function.BiConsumer; import java.util.function.Function; -import com.tterrag.registrate.providers.RegistrateRecipeProvider; -import net.minecraft.data.recipes.RecipeCategory; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; -import net.nuclearteam.createnuclear.api.data.recipe.SmithingClothRecipeBuilder; -import net.nuclearteam.createnuclear.CNTags.CNItemTags; public class DyedItemsList implements Iterable> { diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/item/RodsStats.java b/src/main/java/net/nuclearteam/createnuclear/foundation/item/RodsStats.java deleted file mode 100644 index e754368a9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/item/RodsStats.java +++ /dev/null @@ -1,67 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.item; - -import com.simibubi.create.foundation.item.TooltipModifier; -import net.minecraft.ChatFormatting; -import net.minecraft.network.chat.CommonComponents; -import net.minecraft.network.chat.Component; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.level.Level; -import net.minecraftforge.event.entity.player.ItemTooltipEvent; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import net.nuclearteam.createnuclear.foundation.utility.CreateNuclearLang; - -import java.util.ArrayList; -import java.util.List; - -public record RodsStats(Item item) implements TooltipModifier { - - public static RodsStats create(Item item) { - return new RodsStats(item); - } - - @Override - public void modify(ItemTooltipEvent context) { - List rodTypesStat = getRodTypeStats(item, context.getEntity()); - if (!rodTypesStat.isEmpty()) { - List tooltip = context.getToolTip(); - tooltip.add(CommonComponents.EMPTY); - tooltip.addAll(rodTypesStat); - } - } - - private static List getRodTypeStats(Item item, Player player) { - Level world = player.level(); - List components = new ArrayList<>(); - - RodType rodType = RodType.resolveRodType(item, world); - - if (rodType.isNotEmptyItem()) { - CreateNuclearLang.translate("tooltip.statRod") - .style(ChatFormatting.GRAY) - .addTo(components); - - CreateNuclearLang.builder() - .add(CreateNuclearLang.translate("tooltip.baseRodHeat", rodType.baseRodHeat().get())) - .addTo(components); - CreateNuclearLang.builder() - .add(CreateNuclearLang.translate("tooltip.proximityRodHeat", rodType.proximityRodHeat().get())) - .addTo(components); - CreateNuclearLang.builder() - .add(CreateNuclearLang.translate("tooltip.rodTimer", rodType.rodTimer().get())) - .addTo(components); - CreateNuclearLang.builder() - .add(CreateNuclearLang.translate("tooltip.ratio", rodType.ratio().get())) - .addTo(components); - CreateNuclearLang.builder() - .add(CreateNuclearLang.translate("tooltip.typeRod", rodType.type().name())) - .style(rodType.type().equals(RodType.TypeRod.FUEL) ? ChatFormatting.GREEN : ChatFormatting.AQUA) - .addTo(components); - } - - return components; - - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/BaseFireBlockMixin.java b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/BaseFireBlockMixin.java index 70472b902..7a2e800a4 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/BaseFireBlockMixin.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/BaseFireBlockMixin.java @@ -13,9 +13,8 @@ @Mixin(BaseFireBlock.class) public abstract class BaseFireBlockMixin { - - @Inject(at = @At("HEAD"), method = "getState", cancellable = true) -// @Inject(at = @At("HEAD"), method = "m_49245_", cancellable = true) + // @Inject(at = @At("HEAD"), method = "getState", cancellable = true) + @Inject(at = @At("HEAD"), method = "m_49245_", cancellable = true) private static void CN$getState(BlockGetter reader, BlockPos pos, CallbackInfoReturnable cir) { BlockPos blockPos = pos.below(); BlockState blockState = reader.getBlockState(blockPos); diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/SmithingTransformRecipeMixin.java b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/SmithingTransformRecipeMixin.java deleted file mode 100644 index 52aa15a15..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/SmithingTransformRecipeMixin.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.mixin; - -import net.minecraft.core.RegistryAccess; -import net.minecraft.world.Container; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.SmithingTransformRecipe; -import net.nuclearteam.createnuclear.CNTags; -import net.nuclearteam.createnuclear.foundation.utility.ClothTagHelper; -import org.spongepowered.asm.mixin.Final; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -@Mixin(SmithingTransformRecipe.class) -public class SmithingTransformRecipeMixin { - - @Shadow - @Final - ItemStack result; - - @Inject(at = @At("HEAD"), method = "assemble", cancellable = true) - public void CN$assemble(Container pContainer, RegistryAccess pRegistryAccess, CallbackInfoReturnable cir) { - if (pContainer.getItem(1).is(CNTags.CNItemTags.ANTI_RADIATION_ARMOR.tag)) { - ItemStack resultItem = this.result.copy(); - ItemStack baseItem = pContainer.getItem(1); - ItemStack additionItem = pContainer.getItem(2); - - ClothTagHelper.initClothTagsForResult(resultItem, baseItem, additionItem); - - cir.setReturnValue(resultItem); - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/CameraAccessor.java b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/CameraAccessor.java deleted file mode 100644 index 20f459f9c..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/CameraAccessor.java +++ /dev/null @@ -1,12 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.mixin.client; - -import net.minecraft.client.Camera; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -@Mixin(Camera.class) -public interface CameraAccessor { - // Exposes the private Camera#move so it can be called from outside the class - @Invoker("move") - void callMove(double distanceOffset, double verticalOffset, double horizontalOffset); -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/GameRendererMixin.java b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/GameRendererMixin.java deleted file mode 100644 index cd8619ab5..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/GameRendererMixin.java +++ /dev/null @@ -1,42 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.mixin.client; - -import net.minecraft.client.renderer.GameRenderer; -import net.nuclearteam.createnuclear.CNClientProxy; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -@Mixin(GameRenderer.class) -public abstract class GameRendererMixin { - - @Shadow - private float darkenWorldAmount; - - // Handles darkening the sky/world during a nuclear explosion - @Inject( - method = {"Lnet/minecraft/client/renderer/GameRenderer;tick()V"}, - remap = true, - at = @At(value = "TAIL") - ) - public void CN$tick(CallbackInfo ci) { - if (CNClientProxy.renderNukeSkyDarkFor > 0 && darkenWorldAmount < 1.0F) { - darkenWorldAmount = Math.min(darkenWorldAmount + 0.3F, 1.0F); - } - } - - // Triggers the white flash render (preScreenRender) - @Inject( - method = {"Lnet/minecraft/client/renderer/GameRenderer;render(FJZ)V"}, - remap = true, - at = @At( - value = "INVOKE", - target = "Lcom/mojang/blaze3d/platform/Lighting;setupFor3DItems()V", - shift = At.Shift.AFTER - ) - ) - public void CN$render(float partialTick, long nanos, boolean idk, CallbackInfo ci) { - CNClientProxy.preScreenRender(partialTick); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/RadiationHeartMixin.java b/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/RadiationHeartMixin.java deleted file mode 100644 index 8e53aaf61..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/mixin/client/RadiationHeartMixin.java +++ /dev/null @@ -1,39 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.mixin.client; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.Gui; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.player.Player; -import net.nuclearteam.createnuclear.CNEffects; -import net.nuclearteam.createnuclear.CreateNuclear; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.ModifyArg; - -// Gui.class is the target because that's where renderHeart is defined -@Mixin(Gui.class) -public class RadiationHeartMixin { - - private static final ResourceLocation RADIATION_ICONS = CreateNuclear.asResource("textures/gui/icons.png"); - private static final ResourceLocation VANILLA_ICONS = new ResourceLocation("textures/gui/icons.png"); - - @ModifyArg( - method = "renderHeart", // The single-heart method that actually draws each heart icon - at = @At( - value = "INVOKE", - target = "Lnet/minecraft/client/gui/GuiGraphics;blit(Lnet/minecraft/resources/ResourceLocation;IIIIII)V" - ), - index = 0 - ) - private ResourceLocation CN$changeHeartTexture(ResourceLocation originalTexture) { - if (originalTexture.equals(VANILLA_ICONS)) { - Player player = Minecraft.getInstance().player; - - // Swap to the radiation heart texture while the player has the radiation effect - if (player != null && player.hasEffect(CNEffects.RADIATION.get())) { - return RADIATION_ICONS; - } - } - return originalTexture; - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/CNCreateNuclearPonderTags.java b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNCreateNuclearPonderTags.java similarity index 83% rename from src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/CNCreateNuclearPonderTags.java rename to src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNCreateNuclearPonderTags.java index 9befb3c3f..d2e247864 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/CNCreateNuclearPonderTags.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNCreateNuclearPonderTags.java @@ -1,5 +1,7 @@ -package net.nuclearteam.createnuclear.infrastructure.ponder; +package net.nuclearteam.createnuclear.foundation.ponder; +import com.simibubi.create.Create; +import com.simibubi.create.infrastructure.ponder.AllCreatePonderTags; import com.tterrag.registrate.util.entry.RegistryEntry; import net.createmod.catnip.platform.CatnipServices; import net.createmod.ponder.api.registration.PonderTagRegistrationHelper; @@ -8,7 +10,6 @@ import net.nuclearteam.createnuclear.CNBlocks; import net.nuclearteam.createnuclear.CreateNuclear; -import static com.simibubi.create.infrastructure.ponder.AllCreatePonderTags.DISPLAY_SOURCES; import static com.simibubi.create.infrastructure.ponder.AllCreatePonderTags.KINETIC_SOURCES; @@ -32,10 +33,6 @@ public static void register(PonderTagRegistrationHelper helper .add(CNBlocks.REACTOR_CONTROLLER) ; - HELPER.addToTag(DISPLAY_SOURCES) - .add(CNBlocks.REACTOR_CONTROLLER) - ; - } } diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderIndex.java b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderIndex.java index d3a0f787a..57982a4a3 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderIndex.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderIndex.java @@ -7,7 +7,6 @@ import net.minecraft.resources.ResourceLocation; import net.nuclearteam.createnuclear.CNBlocks; import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.infrastructure.ponder.scenes.CNPonderReactorScenes; public class CNPonderIndex { @@ -15,17 +14,16 @@ public class CNPonderIndex { public static void register(PonderSceneRegistrationHelper helper) { PonderSceneRegistrationHelper> HELPER = helper.withKeyFunction(RegistryEntry::getId); - // Reactor - Storyboards pour chaque taille + // Reactor HELPER.forComponents(CNBlocks.REACTOR_CONTROLLER) - .addStoryBoard("reactor/reactor_t1_ponder", CNPonderReactorScenes::t1) - .addStoryBoard("reactor/reactor_t2_ponder", CNPonderReactorScenes::t2) - .addStoryBoard("reactor/reactor_t3_ponder", CNPonderReactorScenes::t3) - .addStoryBoard("reactor/reactor_t1_ponder", CNPonderReactorScenes::ioPlacement); + .addStoryBoard("reactor/setup", CNPonderReactor::init) + .addStoryBoard("reactor/setup", CNPonderReactor::enable); + HELPER.forComponents(CNItems.REACTOR_BLUEPRINT) - .addStoryBoard("reactor/reactor_t1_ponder", CNPonderReactorScenes::t1) - .addStoryBoard("reactor/reactor_t2_ponder", CNPonderReactorScenes::t2) - .addStoryBoard("reactor/reactor_t3_ponder", CNPonderReactorScenes::t3) - .addStoryBoard("reactor/reactor_t1_ponder", CNPonderReactorScenes::ioPlacement); + .addStoryBoard("reactor/setup", CNPonderReactor::enable); + + ; + } } \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderReactor.java b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderReactor.java new file mode 100644 index 000000000..4436ba413 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CNPonderReactor.java @@ -0,0 +1,103 @@ +package net.nuclearteam.createnuclear.foundation.ponder; + +import net.createmod.catnip.math.Pointing; +import net.createmod.ponder.api.scene.SceneBuilder; +import net.createmod.ponder.api.scene.SceneBuildingUtil; +import net.createmod.ponder.foundation.element.InputWindowElement; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.nuclearteam.createnuclear.CNItems; +import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; + +public class CNPonderReactor { + + private static final BlockPos CONTROLLER = new BlockPos(4, 4, 6); + private static final BlockPos OUTPUT = new BlockPos(4, 1, 6); + private static final BlockPos INPUT = new BlockPos(4, 4, 2); + public static void init(SceneBuilder scene, SceneBuildingUtil util) { + scene.title("reactor", "Construction of the reactor"); + scene.configureBasePlate(0,0,9); + scene.showBasePlate(); + + + for (int y = 1; y < 8; y++) { + scene.overlay().showText(10) + .text("Floor " + y) + .attachKeyFrame() + .placeNearTarget(); + + for (int x = 1; x < 7; x++) { + for (int z = 1; z < 7; z++) { + scene.world().showSection(util.select().position(x,y,z), Direction.NORTH); + scene.idle(5); + if (x == 5 && z == 5 && y == 1) { + scene.rotateCameraY(180f); + } + if (x == INPUT.getX() && y == INPUT.getY() && z == INPUT.getZ()) { + scene.rotateCameraY(180f); + scene.overlay().showText(90) + .text("Reactor Input: A block that stores uranium and graphite rods to operate the reactor.") + .pointAt(util.vector().blockSurface(INPUT, Direction.UP)) + .attachKeyFrame() + .placeNearTarget(); + scene.idle(120); + scene.rotateCameraY(180f); + } + if (x == OUTPUT.getX() && y == OUTPUT.getY() && z == OUTPUT.getZ()) { + //AABB bb = new AABB(OUTPUT).inflate(1/16f, 0, 0); + scene.overlay().showText(90) + .text("Reactor Output: This is the block that outputs the energy (SU) generated by the reactor.") + .pointAt(util.vector().blockSurface(OUTPUT, Direction.UP)) + .attachKeyFrame() + .placeNearTarget(); + scene.idle(120); + } + if (x == CONTROLLER.getX() && y == CONTROLLER.getY() && z == CONTROLLER.getZ()){ + scene.overlay().showText(90) + .text("Reactor Controller: The most important block to operate the reactor; it handles all the calculations needed to generate power.") + .pointAt(util.vector().blockSurface(CONTROLLER, Direction.DOWN)) + .attachKeyFrame() + .placeNearTarget(); + scene.idle(120); + } + } + } + + } + } + + public static void enable(SceneBuilder scene, SceneBuildingUtil util) { + scene.title("reactor_blueprint", "Controller Activation"); + scene.configureBasePlate(0,0,9); + scene.world().showSection(util.select().layer(0), Direction.UP); + scene.showBasePlate(); + + scene.rotateCameraY(260f); + for (int y = 1; y < 8; y++) { + for (int x = 1; x < 7; x++) { + for (int z = 1; z < 7; z++) { + scene.world().showSection(util.select().position(x,y,z), Direction.NORTH); + } + } + } + // For more details, refer to the item's tooltip. + scene.idle(30); + scene.overlay() + .showText(90) + .text("Reactor Blueprint: the most important element; it allows the reactor to be configured according to specific models."); + + Vec3 topSide = util.vector().blockSurface(CONTROLLER, Direction.EAST); + + + scene.overlay() + .showControls(topSide, Pointing.UP, 90) + .withItem(CNItems.REACTOR_BLUEPRINT.asStack()) + .rightClick() + ; + + + scene.world().modifyBlock(CONTROLLER, s -> s.setValue(ReactorControllerBlock.ASSEMBLED, true), true); + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CreateNuclearPonderPlugin.java b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CreateNuclearPonderPlugin.java index ef097696d..3172b1b15 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CreateNuclearPonderPlugin.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/ponder/CreateNuclearPonderPlugin.java @@ -5,7 +5,6 @@ import net.createmod.ponder.api.registration.PonderTagRegistrationHelper; import net.minecraft.resources.ResourceLocation; import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.infrastructure.ponder.CNCreateNuclearPonderTags; public class CreateNuclearPonderPlugin implements PonderPlugin { @Override diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ClothTagHelper.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ClothTagHelper.java deleted file mode 100644 index 298d60943..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ClothTagHelper.java +++ /dev/null @@ -1,43 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.utility; - -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.item.ItemStack; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.equipment.cloth.ClothItem; - -public final class ClothTagHelper { - public static final String COLOR = "ClothColor"; - public static final String ITEM = "ClothItem"; - private ClothTagHelper() {} - - public static void initClothTagsForResult(ItemStack resultItem, ItemStack baseItem, ItemStack additionItem) { - CompoundTag baseTag = baseItem.getOrCreateTag(); - CompoundTag resultTag = resultItem.getOrCreateTag(); - - if (!resultTag.contains(COLOR)) { - if (baseTag.contains(COLOR)) - resultTag.putString(COLOR, baseTag.getString(COLOR)); - } - if (!resultTag.contains(ITEM)) { - if (baseTag.contains(ITEM)) - resultTag.put(ITEM, baseTag.getCompound(ITEM)); - } - - if (additionItem != null && additionItem.getItem() instanceof ClothItem) { - resultTag.putString(COLOR, ((ClothItem) additionItem.getItem()).getColor().getSerializedName()); - resultTag.put(ITEM, additionItem.serializeNBT()); - } - } - - public static String getClothColor(ItemStack stack, String defaultColor) { - if (stack == null) return defaultColor; - CompoundTag tag = stack.getTag(); - return (tag != null && tag.contains(COLOR)) ? tag.getString(COLOR) : defaultColor; - } - - public static String getArmorTexturePath(ItemStack stack, String armorFileName) { - String cloth = getClothColor(stack, "default"); - String textureFile = cloth + "_" + armorFileName; - return CreateNuclear.asResource("textures/models/armor/" + textureFile).toString(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ConfigValueResolver.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ConfigValueResolver.java deleted file mode 100644 index 1af7a8625..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/ConfigValueResolver.java +++ /dev/null @@ -1,57 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.utility; - -import net.nuclearteam.createnuclear.CreateNuclear; - -import java.util.Collection; -import java.util.Set; -import java.util.function.Function; - -/** - * Utility class for resolving and loading configuration values into a target set. - *

- * This class provides a static method to map a collection of input values to a set of resolved values, - * using a provided resolver function. It handles errors and logs unknown or invalid values. - *

- */ -public final class ConfigValueResolver { - private ConfigValueResolver() {} - - /** - * Loads and resolves values from a collection into a target set using the provided resolver function. - *

- * The target set is cleared before loading. For each value in the input collection, the resolver function is applied. - * If the resolved value is not null, it is added to the target set. If the value is unknown or an exception occurs, - * an error is logged. - *

- * - * Usage example: - *
-     * Set mySet = new HashSet<>();
-     * List configValues = Arrays.asList("A", "B", "C");
-     * ConfigValueResolver.loadValuesInSet(configValues, mySet, MyType::fromString);
-     * 
- * - * @param values the collection of input values to resolve - * @param targetSet the set to populate with resolved values (will be cleared first) - * @param resolver the function to resolve each input value to the target type - * @param the input value type - * @param the target value type - */ - public static void loadValuesInSet(Collection values, Set targetSet, Function resolver) { - targetSet.clear(); - - for (I valueId : values) { - try { - T value = resolver.apply(valueId); - - if (value != null) { - targetSet.add(value); - } else { - CreateNuclear.LOGGER.error("Unknown value in config: {}", valueId); - } - } catch (Exception e) { - CreateNuclear.LOGGER.error("Unknown value in config: {} - {}", valueId, e.getMessage()); - } - } - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/CreateNuclearLang.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/CreateNuclearLang.java index 0bd33e503..9d1d16aec 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/CreateNuclearLang.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/CreateNuclearLang.java @@ -1,5 +1,6 @@ package net.nuclearteam.createnuclear.foundation.utility; +import com.simibubi.create.Create; import net.createmod.catnip.lang.Lang; import net.createmod.catnip.lang.LangBuilder; import net.createmod.catnip.lang.LangNumberFormat; diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/InventoryHashUtil.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/InventoryHashUtil.java deleted file mode 100644 index 1863a8e65..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/InventoryHashUtil.java +++ /dev/null @@ -1,97 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.utility; - -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; - -/** - * Utility class for computing a compact long-valued hash that represents a - * {@link net.minecraft.world.entity.player.Player Player}'s inventory state. - * - *

The hash aggregates contributions from the player's main inventory, offhand - * slots, and armor slots. It is intended for fast change-detection, caching, - * or lightweight synchronization checks where a compact fingerprint is useful. - * This is not a cryptographic checksum and may collide for - * different inventories.

- * - *

Implementation details: - * - Empty stacks contribute {@code 0}. - * - Each non-empty stack contributes a value computed from the numeric item id, - * stack count, and the NBT tag's {@code hashCode()} when present. Damage value - * is intentionally excluded: no radiation source reads it, so including it would - * only cause needless recomputation on every durability change. - * - Per-stack contributions are combined using a 31-multiplicative rolling scheme - * (similar to {@link String#hashCode()}).

- * - *

Thread-safety: this class is stateless. Calling code must ensure the - * {@link Player} instance is not concurrently mutated if callers require - * perfectly consistent snapshots.

- */ -public class InventoryHashUtil { - /** - * Computes a deterministic long value representing the contents of the - * provided player's inventory. - * - *

The method iterates the player's main inventory slots ({@code - * player.getInventory().items}), offhand slots ({@code - * player.getInventory().offhand}) and armor slots ({@code - * player.getArmorSlots()}) and combines each stack's contribution using a - * simple rolling scheme. Equal return values usually indicate identical - * inventory contents, but different inventories can collide.

- * - * @param player the player whose inventory will be hashed; must not be - * {@code null} - * @return a long value derived from the contents of the player's - * inventory. This value is suitable for quick equality/change - * detection but is not collision-resistant. - * @throws NullPointerException if {@code player} is {@code null} - * @implNote The algorithm uses {@link Item#getId(net.minecraft.world.item.Item)} - * and basic stack properties (count, tag.hashCode()). It is - * intentionally simple and optimized for speed rather than - * cryptographic strength. - */ - public static long compute(Player player) { - long hash = 1; - - for (ItemStack stack : player.getInventory().items) { - hash = 31 * hash + stackHash(stack); - } - - for (ItemStack stack : player.getInventory().offhand) { - hash = 31 * hash + stackHash(stack); - } - - for (ItemStack stack : player.getArmorSlots()) { - hash = 31 * hash + stackHash(stack); - } - - return hash; - } - - /** - * Computes the contribution of a single {@link ItemStack} to the overall - * inventory hash. - * - *

Empty stacks return {@code 0}. For non-empty stacks the returned value - * encodes the numeric item id, the stack count, and, when applicable, the - * NBT tag's {@code hashCode()}.

- * - * @param stack the item stack to hash; must not be {@code null} - * @return a {@code long} representing the stack's contribution; {@code 0} - * for empty stacks - * @throws NullPointerException if {@code stack} is {@code null} - * @see #compute(Player) - */ - private static long stackHash(ItemStack stack) { - if (stack.isEmpty()) return 0; - - long h = Item.getId(stack.getItem()); - h = 31 * h + stack.getCount(); - - if (stack.hasTag()) { - h = 31 * h + stack.getTag().hashCode(); - } - - return h; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/Maths.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/Maths.java deleted file mode 100644 index 293ba522b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/Maths.java +++ /dev/null @@ -1,144 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// - -package net.nuclearteam.createnuclear.foundation.utility; - -import com.google.common.collect.Sets; -import java.util.Optional; -import java.util.Set; -import java.util.stream.Stream; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.core.Holder; -import net.minecraft.core.QuartPos; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.util.Mth; -import net.minecraft.world.level.BlockGetter; -import net.minecraft.world.level.biome.Biome; -import net.minecraft.world.level.biome.BiomeSource; -import net.minecraft.world.level.biome.Climate; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.phys.Vec3; -import net.minecraft.world.phys.shapes.BooleanOp; -import net.minecraft.world.phys.shapes.Shapes; -import net.minecraft.world.phys.shapes.VoxelShape; - -public class Maths { - public static final Direction[] HORIZONTAL_DIRECTIONS; - public static final Direction[] NOT_UP_DIRECTIONS; - public static final float HALF_SQRT_3; - public static final float QUARTER_PI = 0.7853982F; - - public Maths() { - } - - public static float smin(float a, float b, float k) { - float h = Math.max(k - Math.abs(a - b), 0.0F) / k; - return Math.min(a, b) - h * h * k * 0.25F; - } - - public static float sampleNoise2D(int x, int z, float simplexSampleRate) { - return (float) SimplexNoise.noise((double)(((float)x + simplexSampleRate) / simplexSampleRate), (double)(((float)z + simplexSampleRate) / simplexSampleRate)); - } - - public static float sampleNoise3D(int x, int y, int z, float simplexSampleRate) { - return (float) SimplexNoise.noise((double)(((float)x + simplexSampleRate) / simplexSampleRate), (double)(((float)y + simplexSampleRate) / simplexSampleRate), (double)(((float)z + simplexSampleRate) / simplexSampleRate)); - } - - public static float sampleNoise3D(float x, float y, float z, float simplexSampleRate) { - return (float) SimplexNoise.noise((double)((x + simplexSampleRate) / simplexSampleRate), (double)((y + simplexSampleRate) / simplexSampleRate), (double)((z + simplexSampleRate) / simplexSampleRate)); - } - - public static VoxelShape buildShape(VoxelShape... from) { - return (VoxelShape)Stream.of(from).reduce((v1, v2) -> { - return Shapes.join(v1, v2, BooleanOp.OR); - }).get(); - } - - public static float walkValue(float limbSwing, float limbSwingAmount, float speed, float offset, float degree, boolean inverse) { - return (float)(Math.cos((double)(limbSwing * speed + offset)) * (double)degree * (double)limbSwingAmount * (double)(inverse ? -1 : 1)); - } - - public static float approachRotation(float current, float target, float max) { - float f = Mth.wrapDegrees(target - current); - if (f > max) { - f = max; - } - - if (f < -max) { - f = -max; - } - - return Mth.wrapDegrees(current + f); - } - - public static Vec3 getGroundBelowPosition(BlockGetter level, Vec3 in) { - BlockPos pos; - for(pos = BlockPos.containing(in); pos.getY() > level.getMinBuildHeight() && level.getBlockState(pos).getCollisionShape(level, pos).isEmpty(); pos = pos.below()) { - } - - BlockState state = level.getBlockState(pos); - VoxelShape shape = state.getCollisionShape(level, pos); - float top; - if (shape.isEmpty()) { - top = 0.0F; - } else { - Vec3 modIn = new Vec3(in.x % 1.0, 1.0, in.z % 1.0); - Optional closest = shape.closestPointTo(modIn); - top = closest.isPresent() ? (float)((Vec3)closest.get()).y : 0.0F; - } - - return Vec3.upFromBottomCenterOf(pos, (double)top); - } - - public static Vec3 readVec3(FriendlyByteBuf buf) { - return new Vec3(buf.readDouble(), buf.readDouble(), buf.readDouble()); - } - - public static FriendlyByteBuf writeVec3(FriendlyByteBuf buf, Vec3 vec3) { - buf.writeDouble(vec3.x()); - buf.writeDouble(vec3.y()); - buf.writeDouble(vec3.z()); - return buf; - } - - public static float approachDegreesNoWrap(float from, float to, float by) { - float f = (to - from) % 360.0F; - return Mth.approach(from, from + f, by); - } - - public static float canyonStep(float heightScale, int scaleTo) { - int clampTo100 = (int)(heightScale * (float)scaleTo * (float)scaleTo); - return Mth.clamp((float)Math.round((float)clampTo100 / (float)scaleTo) / (float)scaleTo, 0.0F, 1.0F); - } - - public static Set> getBiomesWithinAtY(BiomeSource biomeSource, int x, int y, int z, int xzDist, Climate.Sampler sampler) { - int i = QuartPos.fromBlock(x - xzDist); - int j = QuartPos.fromBlock(y); - int k = QuartPos.fromBlock(z - xzDist); - int l = QuartPos.fromBlock(x + xzDist); - int j1 = QuartPos.fromBlock(z + xzDist); - int k1 = l - i + 1; - int i2 = j1 - k + 1; - Set> set = Sets.newHashSet(); - - for(int j2 = 0; j2 < i2; ++j2) { - for(int k2 = 0; k2 < k1; ++k2) { - int i3 = i + k2; - int k3 = k + j2; - set.add(biomeSource.getNoiseBiome(i3, j, k3, sampler)); - } - } - - return set; - } - - static { - HORIZONTAL_DIRECTIONS = new Direction[]{Direction.NORTH, Direction.EAST, Direction.SOUTH, Direction.WEST}; - NOT_UP_DIRECTIONS = new Direction[]{Direction.NORTH, Direction.EAST, Direction.SOUTH, Direction.WEST, Direction.DOWN}; - HALF_SQRT_3 = (float)(Math.sqrt(3.0) / 2.0); - } -} - diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/NotifyUtil.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/NotifyUtil.java deleted file mode 100644 index d712be27f..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/NotifyUtil.java +++ /dev/null @@ -1,155 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.utility; - -import net.createmod.catnip.lang.LangBuilder; -import net.minecraft.ChatFormatting; -import net.minecraft.core.BlockPos; -import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; -import net.minecraft.network.protocol.game.ClientboundSetSubtitleTextPacket; -import net.minecraft.network.protocol.game.ClientboundSetTitleTextPacket; -import net.minecraft.network.protocol.game.ClientboundSetTitlesAnimationPacket; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.level.Level; -import net.minecraft.world.phys.AABB; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * Utility class for sending player notifications server-side. - * Supports Action Bar messages and full-screen title/subtitle overlays, - * with radius-based or server-wide targeting. - */ -public class NotifyUtil { - - /** - * Convenience overload that accepts a {@link LangBuilder} message, - * converting it to a {@link MutableComponent} before sending. - * - * @see #sendActionBar(Level, BlockPos, MutableComponent, ChatFormatting, int, boolean) - */ - public static void sendActionBar(Level level, BlockPos pos, LangBuilder message, ChatFormatting color, int radius, boolean warnAll) { - sendActionBar(level, pos, message.component(), color, radius, warnAll); - } - - /** - * Sends a bold colored message to the Action Bar (above the hotbar) of nearby players. - * No-ops on the client side. - * - * @param level The server-side world used to resolve players - * @param pos Center position used to compute the notification radius - * @param message The component text to display; will be styled bold with {@code color} - * @param color {@link ChatFormatting} color applied to the message - * @param radius Block radius around {@code pos} within which players are notified; - * ignored when {@code warnAll} is {@code true} - * @param warnAll If {@code true}, all online players receive the message regardless of position - */ - public static void sendActionBar(Level level, BlockPos pos, MutableComponent message, ChatFormatting color, int radius, boolean warnAll) { - if (level.isClientSide) return; - - // Build the text component in BOLD with the chosen color - Component actionBarComp = message.withStyle(color, ChatFormatting.BOLD); - - List targets = getTargetPlayers(level, pos, radius, warnAll); - - for (ServerPlayer player : targets) { - // The 'true' parameter routes the message to the Action Bar - player.displayClientMessage(actionBarComp, true); - } - } - - /** - * Convenience overload that accepts {@link LangBuilder} title and subtitle, - * converting them to {@link MutableComponent} before sending. - * - * @see #sendTitle(Level, BlockPos, MutableComponent, MutableComponent, ChatFormatting, int, boolean, int, int, int) - */ - public static void sendTitle(Level level, BlockPos pos, LangBuilder title, LangBuilder subtitle, ChatFormatting color, - int radius, boolean warnAll, int fadeIn, int stay, int fadeOut) { - sendTitle(level, pos, title.component(), subtitle.component(), color, radius, warnAll, fadeIn, stay, fadeOut); - } - - /** - * Sends a full-screen title and subtitle overlay to nearby players. - * The title is rendered bold with {@code color}; the subtitle is always white. - * No-ops on the client side. - * - * @param level The server-side world used to resolve players - * @param pos Center position used to compute the notification radius - * @param title Main title text displayed in large letters - * @param subtitle Subtitle text displayed below the title - * @param color {@link ChatFormatting} color applied to the title - * @param radius Block radius around {@code pos} within which players are notified; - * ignored when {@code warnAll} is {@code true} - * @param warnAll If {@code true}, all online players receive the message regardless of position - * @param fadeIn Ticks for the fade-in animation - * @param stay Ticks the title remains fully visible - * @param fadeOut Ticks for the fade-out animation - */ - public static void sendTitle(Level level, BlockPos pos, MutableComponent title, MutableComponent subtitle, ChatFormatting color, - int radius, boolean warnAll, int fadeIn, int stay, int fadeOut) { - - if (level.isClientSide) return; - - Component titleComp = title.withStyle(color, ChatFormatting.BOLD); - Component subtitleComp = subtitle.withStyle(ChatFormatting.WHITE); - - List targets = getTargetPlayers(level, pos, radius, warnAll); - - for (ServerPlayer serverPlayer : targets) { - serverPlayer.connection.send(new ClientboundSetTitlesAnimationPacket(fadeIn, stay, fadeOut)); - serverPlayer.connection.send(new ClientboundSetSubtitleTextPacket(subtitleComp)); - serverPlayer.connection.send(new ClientboundSetTitleTextPacket(titleComp)); - } - } - - /** - * Convenience overload that accepts {@link LangBuilder} title and subtitle, - * converting them to {@link MutableComponent} before sending. - * - * @see #quickAlert(Level, BlockPos, MutableComponent, MutableComponent, ChatFormatting, int, boolean) - */ - public static void quickAlert(Level level, BlockPos pos, LangBuilder title, LangBuilder sub, ChatFormatting color, int radius, boolean warnAll) { - quickAlert(level, pos, title.component(), sub.component(), color, radius, warnAll); - } - - - /** - * Shortcut for {@link #sendTitle} using default animation timings (fadeIn=10, stay=50, fadeOut=10). - * - * @param level The server-side world used to resolve players - * @param pos Center position used to compute the notification radius - * @param title Main title text - * @param sub Subtitle text - * @param color {@link ChatFormatting} color applied to the title - * @param radius Block radius around {@code pos}; ignored when {@code warnAll} is {@code true} - * @param warnAll If {@code true}, all online players receive the message - */ - public static void quickAlert(Level level, BlockPos pos, MutableComponent title, MutableComponent sub, ChatFormatting color, int radius, boolean warnAll) { - sendTitle(level, pos, title, sub, color, radius, warnAll, 10, 50, 10); - } - - /** - * Resolves the list of players to notify. - * Returns all online players if {@code warnAll} is {@code true}, - * otherwise returns only those within {@code radius} blocks of {@code pos}. - * - * @param level The server-side world - * @param pos Center position for the radius check - * @param radius Block radius for proximity filtering - * @param warnAll If {@code true}, bypasses the radius check - * @return Mutable list of matching {@link ServerPlayer} instances; empty if the server is unavailable - */ - private static List getTargetPlayers(Level level, BlockPos pos, int radius, boolean warnAll) { - if (level.getServer() == null) return List.of(); - - List allPlayers = level.getServer().getPlayerList().getPlayers(); - if (warnAll) return new ArrayList<>(allPlayers); - - AABB area = new AABB(pos).inflate(radius); - return allPlayers.stream() - .filter(p -> area.contains(p.getX(), p.getY(), p.getZ())) - .collect(Collectors.toList()); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/SimplexNoise.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/SimplexNoise.java deleted file mode 100644 index 6fedaf29b..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/SimplexNoise.java +++ /dev/null @@ -1,385 +0,0 @@ -package net.nuclearteam.createnuclear.foundation.utility; - -public class SimplexNoise { - private static SimplexNoise.Grad[] grad3 = new SimplexNoise.Grad[]{new SimplexNoise.Grad(1.0, 1.0, 0.0), new SimplexNoise.Grad(-1.0, 1.0, 0.0), new SimplexNoise.Grad(1.0, -1.0, 0.0), new SimplexNoise.Grad(-1.0, -1.0, 0.0), new SimplexNoise.Grad(1.0, 0.0, 1.0), new SimplexNoise.Grad(-1.0, 0.0, 1.0), new SimplexNoise.Grad(1.0, 0.0, -1.0), new SimplexNoise.Grad(-1.0, 0.0, -1.0), new SimplexNoise.Grad(0.0, 1.0, 1.0), new SimplexNoise.Grad(0.0, -1.0, 1.0), new SimplexNoise.Grad(0.0, 1.0, -1.0), new SimplexNoise.Grad(0.0, -1.0, -1.0)}; - private static SimplexNoise.Grad[] grad4 = new SimplexNoise.Grad[]{new SimplexNoise.Grad(0.0, 1.0, 1.0, 1.0), new SimplexNoise.Grad(0.0, 1.0, 1.0, -1.0), new SimplexNoise.Grad(0.0, 1.0, -1.0, 1.0), new SimplexNoise.Grad(0.0, 1.0, -1.0, -1.0), new SimplexNoise.Grad(0.0, -1.0, 1.0, 1.0), new SimplexNoise.Grad(0.0, -1.0, 1.0, -1.0), new SimplexNoise.Grad(0.0, -1.0, -1.0, 1.0), new SimplexNoise.Grad(0.0, -1.0, -1.0, -1.0), new SimplexNoise.Grad(1.0, 0.0, 1.0, 1.0), new SimplexNoise.Grad(1.0, 0.0, 1.0, -1.0), new SimplexNoise.Grad(1.0, 0.0, -1.0, 1.0), new SimplexNoise.Grad(1.0, 0.0, -1.0, -1.0), new SimplexNoise.Grad(-1.0, 0.0, 1.0, 1.0), new SimplexNoise.Grad(-1.0, 0.0, 1.0, -1.0), new SimplexNoise.Grad(-1.0, 0.0, -1.0, 1.0), new SimplexNoise.Grad(-1.0, 0.0, -1.0, -1.0), new SimplexNoise.Grad(1.0, 1.0, 0.0, 1.0), new SimplexNoise.Grad(1.0, 1.0, 0.0, -1.0), new SimplexNoise.Grad(1.0, -1.0, 0.0, 1.0), new SimplexNoise.Grad(1.0, -1.0, 0.0, -1.0), new SimplexNoise.Grad(-1.0, 1.0, 0.0, 1.0), new SimplexNoise.Grad(-1.0, 1.0, 0.0, -1.0), new SimplexNoise.Grad(-1.0, -1.0, 0.0, 1.0), new SimplexNoise.Grad(-1.0, -1.0, 0.0, -1.0), new SimplexNoise.Grad(1.0, 1.0, 1.0, 0.0), new SimplexNoise.Grad(1.0, 1.0, -1.0, 0.0), new SimplexNoise.Grad(1.0, -1.0, 1.0, 0.0), new SimplexNoise.Grad(1.0, -1.0, -1.0, 0.0), new SimplexNoise.Grad(-1.0, 1.0, 1.0, 0.0), new SimplexNoise.Grad(-1.0, 1.0, -1.0, 0.0), new SimplexNoise.Grad(-1.0, -1.0, 1.0, 0.0), new SimplexNoise.Grad(-1.0, -1.0, -1.0, 0.0)}; - private static short[] p = new short[]{151, 160, 137, 91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69, 142, 8, 99, 37, 240, 21, 10, 23, 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252, 219, 203, 117, 35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168, 68, 175, 74, 165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60, 211, 133, 230, 220, 105, 92, 41, 55, 46, 245, 40, 244, 102, 143, 54, 65, 25, 63, 161, 1, 216, 80, 73, 209, 76, 132, 187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100, 109, 198, 173, 186, 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82, 85, 212, 207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, 170, 213, 119, 248, 152, 2, 44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98, 108, 110, 79, 113, 224, 232, 178, 185, 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238, 210, 144, 12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31, 181, 199, 106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205, 93, 222, 114, 67, 29, 24, 72, 243, 141, 128, 195, 78, 66, 215, 61, 156, 180}; - private static short[] perm = new short[512]; - private static short[] permMod12 = new short[512]; - private static final double F2; - private static final double G2; - private static final double F3 = 0.3333333333333333; - private static final double G3 = 0.16666666666666666; - private static final double F4; - private static final double G4; - - public SimplexNoise() { - } - - private static int fastfloor(double x) { - int xi = (int)x; - return x < (double)xi ? xi - 1 : xi; - } - - private static double dot(SimplexNoise.Grad g, double x, double y) { - return g.x * x + g.y * y; - } - - private static double dot(SimplexNoise.Grad g, double x, double y, double z) { - return g.x * x + g.y * y + g.z * z; - } - - private static double dot(SimplexNoise.Grad g, double x, double y, double z, double w) { - return g.x * x + g.y * y + g.z * z + g.w * w; - } - - public static double noise(double xin, double yin) { - double s = (xin + yin) * F2; - int i = fastfloor(xin + s); - int j = fastfloor(yin + s); - double t = (double)(i + j) * G2; - double X0 = (double)i - t; - double Y0 = (double)j - t; - double x0 = xin - X0; - double y0 = yin - Y0; - byte i1; - byte j1; - if (x0 > y0) { - i1 = 1; - j1 = 0; - } else { - i1 = 0; - j1 = 1; - } - - double x1 = x0 - (double)i1 + G2; - double y1 = y0 - (double)j1 + G2; - double x2 = x0 - 1.0 + 2.0 * G2; - double y2 = y0 - 1.0 + 2.0 * G2; - int ii = i & 255; - int jj = j & 255; - int gi0 = permMod12[ii + perm[jj]]; - int gi1 = permMod12[ii + i1 + perm[jj + j1]]; - int gi2 = permMod12[ii + 1 + perm[jj + 1]]; - double t0 = 0.5 - x0 * x0 - y0 * y0; - double n0; - if (t0 < 0.0) { - n0 = 0.0; - } else { - t0 *= t0; - n0 = t0 * t0 * dot(grad3[gi0], x0, y0); - } - - double t1 = 0.5 - x1 * x1 - y1 * y1; - double n1; - if (t1 < 0.0) { - n1 = 0.0; - } else { - t1 *= t1; - n1 = t1 * t1 * dot(grad3[gi1], x1, y1); - } - - double t2 = 0.5 - x2 * x2 - y2 * y2; - double n2; - if (t2 < 0.0) { - n2 = 0.0; - } else { - t2 *= t2; - n2 = t2 * t2 * dot(grad3[gi2], x2, y2); - } - - return 70.0 * (n0 + n1 + n2); - } - - public static double noise(double xin, double yin, double zin) { - double s = (xin + yin + zin) * 0.3333333333333333; - int i = fastfloor(xin + s); - int j = fastfloor(yin + s); - int k = fastfloor(zin + s); - double t = (double)(i + j + k) * 0.16666666666666666; - double X0 = (double)i - t; - double Y0 = (double)j - t; - double Z0 = (double)k - t; - double x0 = xin - X0; - double y0 = yin - Y0; - double z0 = zin - Z0; - byte i1; - byte j1; - byte k1; - byte i2; - byte j2; - byte k2; - if (x0 >= y0) { - if (y0 >= z0) { - i1 = 1; - j1 = 0; - k1 = 0; - i2 = 1; - j2 = 1; - k2 = 0; - } else if (x0 >= z0) { - i1 = 1; - j1 = 0; - k1 = 0; - i2 = 1; - j2 = 0; - k2 = 1; - } else { - i1 = 0; - j1 = 0; - k1 = 1; - i2 = 1; - j2 = 0; - k2 = 1; - } - } else if (y0 < z0) { - i1 = 0; - j1 = 0; - k1 = 1; - i2 = 0; - j2 = 1; - k2 = 1; - } else if (x0 < z0) { - i1 = 0; - j1 = 1; - k1 = 0; - i2 = 0; - j2 = 1; - k2 = 1; - } else { - i1 = 0; - j1 = 1; - k1 = 0; - i2 = 1; - j2 = 1; - k2 = 0; - } - - double x1 = x0 - (double)i1 + 0.16666666666666666; - double y1 = y0 - (double)j1 + 0.16666666666666666; - double z1 = z0 - (double)k1 + 0.16666666666666666; - double x2 = x0 - (double)i2 + 0.3333333333333333; - double y2 = y0 - (double)j2 + 0.3333333333333333; - double z2 = z0 - (double)k2 + 0.3333333333333333; - double x3 = x0 - 1.0 + 0.5; - double y3 = y0 - 1.0 + 0.5; - double z3 = z0 - 1.0 + 0.5; - int ii = i & 255; - int jj = j & 255; - int kk = k & 255; - int gi0 = permMod12[ii + perm[jj + perm[kk]]]; - int gi1 = permMod12[ii + i1 + perm[jj + j1 + perm[kk + k1]]]; - int gi2 = permMod12[ii + i2 + perm[jj + j2 + perm[kk + k2]]]; - int gi3 = permMod12[ii + 1 + perm[jj + 1 + perm[kk + 1]]]; - double t0 = 0.6 - x0 * x0 - y0 * y0 - z0 * z0; - double n0; - if (t0 < 0.0) { - n0 = 0.0; - } else { - t0 *= t0; - n0 = t0 * t0 * dot(grad3[gi0], x0, y0, z0); - } - - double t1 = 0.6 - x1 * x1 - y1 * y1 - z1 * z1; - double n1; - if (t1 < 0.0) { - n1 = 0.0; - } else { - t1 *= t1; - n1 = t1 * t1 * dot(grad3[gi1], x1, y1, z1); - } - - double t2 = 0.6 - x2 * x2 - y2 * y2 - z2 * z2; - double n2; - if (t2 < 0.0) { - n2 = 0.0; - } else { - t2 *= t2; - n2 = t2 * t2 * dot(grad3[gi2], x2, y2, z2); - } - - double t3 = 0.6 - x3 * x3 - y3 * y3 - z3 * z3; - double n3; - if (t3 < 0.0) { - n3 = 0.0; - } else { - t3 *= t3; - n3 = t3 * t3 * dot(grad3[gi3], x3, y3, z3); - } - - return 32.0 * (n0 + n1 + n2 + n3); - } - - public static double noise(double x, double y, double z, double w) { - double s = (x + y + z + w) * F4; - int i = fastfloor(x + s); - int j = fastfloor(y + s); - int k = fastfloor(z + s); - int l = fastfloor(w + s); - double t = (double)(i + j + k + l) * G4; - double X0 = (double)i - t; - double Y0 = (double)j - t; - double Z0 = (double)k - t; - double W0 = (double)l - t; - double x0 = x - X0; - double y0 = y - Y0; - double z0 = z - Z0; - double w0 = w - W0; - int rankx = 0; - int ranky = 0; - int rankz = 0; - int rankw = 0; - if (x0 > y0) { - ++rankx; - } else { - ++ranky; - } - - if (x0 > z0) { - ++rankx; - } else { - ++rankz; - } - - if (x0 > w0) { - ++rankx; - } else { - ++rankw; - } - - if (y0 > z0) { - ++ranky; - } else { - ++rankz; - } - - if (y0 > w0) { - ++ranky; - } else { - ++rankw; - } - - if (z0 > w0) { - ++rankz; - } else { - ++rankw; - } - - int i1 = rankx >= 3 ? 1 : 0; - int j1 = ranky >= 3 ? 1 : 0; - int k1 = rankz >= 3 ? 1 : 0; - int l1 = rankw >= 3 ? 1 : 0; - int i2 = rankx >= 2 ? 1 : 0; - int j2 = ranky >= 2 ? 1 : 0; - int k2 = rankz >= 2 ? 1 : 0; - int l2 = rankw >= 2 ? 1 : 0; - int i3 = rankx >= 1 ? 1 : 0; - int j3 = ranky >= 1 ? 1 : 0; - int k3 = rankz >= 1 ? 1 : 0; - int l3 = rankw >= 1 ? 1 : 0; - double x1 = x0 - (double)i1 + G4; - double y1 = y0 - (double)j1 + G4; - double z1 = z0 - (double)k1 + G4; - double w1 = w0 - (double)l1 + G4; - double x2 = x0 - (double)i2 + 2.0 * G4; - double y2 = y0 - (double)j2 + 2.0 * G4; - double z2 = z0 - (double)k2 + 2.0 * G4; - double w2 = w0 - (double)l2 + 2.0 * G4; - double x3 = x0 - (double)i3 + 3.0 * G4; - double y3 = y0 - (double)j3 + 3.0 * G4; - double z3 = z0 - (double)k3 + 3.0 * G4; - double w3 = w0 - (double)l3 + 3.0 * G4; - double x4 = x0 - 1.0 + 4.0 * G4; - double y4 = y0 - 1.0 + 4.0 * G4; - double z4 = z0 - 1.0 + 4.0 * G4; - double w4 = w0 - 1.0 + 4.0 * G4; - int ii = i & 255; - int jj = j & 255; - int kk = k & 255; - int ll = l & 255; - int gi0 = perm[ii + perm[jj + perm[kk + perm[ll]]]] % 32; - int gi1 = perm[ii + i1 + perm[jj + j1 + perm[kk + k1 + perm[ll + l1]]]] % 32; - int gi2 = perm[ii + i2 + perm[jj + j2 + perm[kk + k2 + perm[ll + l2]]]] % 32; - int gi3 = perm[ii + i3 + perm[jj + j3 + perm[kk + k3 + perm[ll + l3]]]] % 32; - int gi4 = perm[ii + 1 + perm[jj + 1 + perm[kk + 1 + perm[ll + 1]]]] % 32; - double t0 = 0.6 - x0 * x0 - y0 * y0 - z0 * z0 - w0 * w0; - double n0; - if (t0 < 0.0) { - n0 = 0.0; - } else { - t0 *= t0; - n0 = t0 * t0 * dot(grad4[gi0], x0, y0, z0, w0); - } - - double t1 = 0.6 - x1 * x1 - y1 * y1 - z1 * z1 - w1 * w1; - double n1; - if (t1 < 0.0) { - n1 = 0.0; - } else { - t1 *= t1; - n1 = t1 * t1 * dot(grad4[gi1], x1, y1, z1, w1); - } - - double t2 = 0.6 - x2 * x2 - y2 * y2 - z2 * z2 - w2 * w2; - double n2; - if (t2 < 0.0) { - n2 = 0.0; - } else { - t2 *= t2; - n2 = t2 * t2 * dot(grad4[gi2], x2, y2, z2, w2); - } - - double t3 = 0.6 - x3 * x3 - y3 * y3 - z3 * z3 - w3 * w3; - double n3; - if (t3 < 0.0) { - n3 = 0.0; - } else { - t3 *= t3; - n3 = t3 * t3 * dot(grad4[gi3], x3, y3, z3, w3); - } - - double t4 = 0.6 - x4 * x4 - y4 * y4 - z4 * z4 - w4 * w4; - double n4; - if (t4 < 0.0) { - n4 = 0.0; - } else { - t4 *= t4; - n4 = t4 * t4 * dot(grad4[gi4], x4, y4, z4, w4); - } - - return 27.0 * (n0 + n1 + n2 + n3 + n4); - } - - static { - for(int i = 0; i < 512; ++i) { - perm[i] = p[i & 255]; - permMod12[i] = (short)(perm[i] % 12); - } - - F2 = 0.5 * (Math.sqrt(3.0) - 1.0); - G2 = (3.0 - Math.sqrt(3.0)) / 6.0; - F4 = (Math.sqrt(5.0) - 1.0) / 4.0; - G4 = (5.0 - Math.sqrt(5.0)) / 20.0; - } - - private static class Grad { - double x; - double y; - double z; - double w; - - Grad(double x, double y, double z) { - this.x = x; - this.y = y; - this.z = z; - } - - Grad(double x, double y, double z, double w) { - this.x = x; - this.y = y; - this.z = z; - this.w = w; - } - } -} - diff --git a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/TextUtils.java b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/TextUtils.java index e6a9aa20f..6cecb7a45 100644 --- a/src/main/java/net/nuclearteam/createnuclear/foundation/utility/TextUtils.java +++ b/src/main/java/net/nuclearteam/createnuclear/foundation/utility/TextUtils.java @@ -1,6 +1,15 @@ package net.nuclearteam.createnuclear.foundation.utility; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Font; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.chat.Style; import org.apache.commons.lang3.StringUtils; +import org.joml.Matrix4f; +import java.util.Optional; import java.util.stream.Stream; public class TextUtils { @@ -32,4 +41,80 @@ public static String titleCaseConversion(String inputString) return StringUtils.trim(resultPlaceHolder.toString()); } -} + + public static void renderMultilineDebugText(PoseStack poseStack, MultiBufferSource buffer, int packedLight, + double baseY, boolean transparent, String... lines) { + double y = baseY + (lines.length/4.0D); + for (String line : lines) { + renderDebugText(poseStack, buffer, packedLight, y, transparent, line); + y -= 0.25D; + } + } + + public static void renderDebugText(PoseStack poseStack, MultiBufferSource pBuffer, int pPackedLight, + double y, boolean transparent, String text) { + poseStack.pushPose(); + poseStack.translate(0.0D, y, 0.0D); + poseStack.mulPose(Minecraft.getInstance().getBlockEntityRenderDispatcher().camera.rotation()); + poseStack.scale(-0.025F, -0.025F, 0.025F); + + Matrix4f matrix4f = poseStack.last().pose(); + + float f1 = Minecraft.getInstance().options.getBackgroundOpacity(0.25F); + int j = (int)(f1 * 255.0F) << 24; + Font font = Minecraft.getInstance().font; + + float f2 = (float)(-font.width(text) / 2); + font.drawInBatch(text, f2, 0, 553648127, false, matrix4f, pBuffer, transparent ? Font.DisplayMode.SEE_THROUGH : Font.DisplayMode.NORMAL, j, pPackedLight); + + if (transparent) { + font.drawInBatch(text, f2, 0, -1, false, matrix4f, pBuffer, Font.DisplayMode.NORMAL, 0, pPackedLight); + } + + poseStack.popPose(); + } + + public static Component translateWithFormatting(String key, Object... args) { + + MutableComponent base = Component.translatable(key, args); + + StringBuilder partsStringBuilder = new StringBuilder(); + + base.visit((style, part) -> { + partsStringBuilder.append(part); + return Optional.empty(); + }, Style.EMPTY); + + return Component.literal(partsStringBuilder.toString()); + } + + public static String formatInt(int num) { + return formatInt(num, ","); + } + + public static String formatInt(int num, String separator) { + + String raw = String.valueOf(num); + + if (raw.length() <= 3) + return raw; + + int start = raw.length() % 3; + StringBuilder out = new StringBuilder(raw.length() + (raw.length()/3) * separator.length()); + + out.append(raw, 0, start); + + for (int i = 0; i < raw.length() / 3; i++) { + if (i != 0 || start != 0) + out.append(separator); + out.append(raw, i*3 + start, i*3 + start + 3); + } + + return out.toString(); + } + + public static String leftPad(String s, char c, int width) { + if (s.length() >= width) return s; + return String.valueOf(c).repeat(width - s.length()) + s; + } +} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/gametest/DefaultHeatCalculatorGameTest.java b/src/main/java/net/nuclearteam/createnuclear/gametest/DefaultHeatCalculatorGameTest.java deleted file mode 100644 index f94588987..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/gametest/DefaultHeatCalculatorGameTest.java +++ /dev/null @@ -1,233 +0,0 @@ -package net.nuclearteam.createnuclear.gametest; - -import net.minecraft.core.BlockPos; -import net.minecraft.gametest.framework.GameTest; -import net.minecraft.gametest.framework.GameTestHelper; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; -import net.minecraftforge.gametest.GameTestHolder; -import net.minecraftforge.gametest.PrefixGameTestTemplate; -import net.minecraftforge.items.ItemStackHandler; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlockEntity; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerInventory; -import net.nuclearteam.createnuclear.content.multiblock.controller.display.ReactorDisplayState; -import net.nuclearteam.createnuclear.content.multiblock.reactorLogic.DefaultHeatCalculator; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -import java.util.List; -import java.util.Map; - -/** - * GameTest coverage for {@link DefaultHeatCalculator#computeHeat}, run against a real - * {@code ServerLevel}, a real {@link ReactorControllerBlockEntity} and real registered - * rod items (no mocks) — plain JUnit cannot exercise this method at all: {@code Item}, - * {@code ItemStack} and {@code RodType} resolution all depend on Minecraft/Forge registries - * that only exist once the game has bootstrapped (see AUDIT_ACTUEL.md §3). - *

- * All tests share the "empty_platform" structure and place a single - * {@code CNBlocks.REACTOR_CONTROLLER} to obtain a real {@link ReactorControllerInventory}. - * The reactor "pattern" (57-slot {@link ItemStackHandler}, slots per - * {@code DefaultHeatCalculator.formattedPattern}) is written directly into the blueprint - * item's {@code pattern} NBT tag and set into inventory slot 0, exactly as - * {@code ReactorBluePrintItem.getItemStorage} reads it back. - *

- * Expected heat values are computed from the live {@code CNConfigs.server().rods} values - * rather than hardcoded, so these tests stay correct if the mod's default balance changes. - */ -@GameTestHolder(CreateNuclear.MOD_ID) -@PrefixGameTestTemplate(false) -public class DefaultHeatCalculatorGameTest { - - private static final String STRUCTURE = "empty_platform"; - private static final double DELTA = 1e-9; - - // ---------- test fixtures ---------- - - private static ReactorControllerInventory placeController(GameTestHelper helper, BlockPos rel) { - helper.setBlock(rel, CNBlocks.REACTOR_CONTROLLER.get().defaultBlockState()); - ReactorControllerBlockEntity be = (ReactorControllerBlockEntity) helper.getBlockEntity(rel); - return be.getInventoryObject(); - } - - /** Writes {@code rodsBySlot} into the blueprint item's "pattern" NBT and loads it into slot 0. */ - private static void loadPattern(ReactorControllerInventory inventory, Map rodsBySlot) { - ItemStackHandler patternHandler = new ItemStackHandler(57); - rodsBySlot.forEach((slot, item) -> patternHandler.setStackInSlot(slot, new ItemStack(item))); - - ItemStack blueprint = new ItemStack(CNItems.REACTOR_BLUEPRINT.get()); - blueprint.getOrCreateTag().put("pattern", patternHandler.serializeNBT()); - inventory.setStackInSlot(0, blueprint); - } - - private static final DefaultHeatCalculator CALCULATOR = new DefaultHeatCalculator(); - - // ================================================================ - // 1. single fuel rod, no neighbors - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void singleFuelRod_noNeighbors_addsOnlyItsOwnBaseRodHeat(GameTestHelper helper) { - Item thorium = CNItems.THORIUM_ROD.get(); - int baseRodHeat = CNConfigs.server().rods.baseValueThorium.get(); - - ReactorControllerInventory inventory = placeController(helper, new BlockPos(1, 1, 1)); - // slot 18: middle row, no adjacent slot populated -> no neighbor bonus possible - loadPattern(inventory, Map.of(18, thorium)); - - ReactorDisplayState displayState = new ReactorDisplayState(Map.of(thorium, 1), List.of(), 0); - double overHeat = 10.0; - - double heat = CALCULATOR.computeHeat(null, null, inventory, overHeat, displayState, helper.getLevel()); - - helper.assertTrue(Math.abs(heat - (baseRodHeat + overHeat)) < DELTA, - "an isolated fuel rod should only contribute its own baseRodHeat, plus overHeat: expected " - + (baseRodHeat + overHeat) + ", got " + heat); - helper.succeed(); - } - - // ================================================================ - // 2. single cooler rod, no neighbors - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void singleCoolerRod_noNeighbors_addsOnlyItsOwnBaseRodHeat(GameTestHelper helper) { - Item graphite = CNItems.GRAPHITE_ROD.get(); - int baseRodHeat = CNConfigs.server().rods.graphiteBaseValue.get(); - - ReactorControllerInventory inventory = placeController(helper, new BlockPos(1, 1, 1)); - loadPattern(inventory, Map.of(18, graphite)); - - ReactorDisplayState displayState = new ReactorDisplayState(Map.of(graphite, 1), List.of(), 0); - - // computeHeat clamps its result to a minimum of 0 (Math.max(0, heat+overHeat)); an isolated - // cooler's own baseRodHeat is negative by default, so a large overHeat is added here to keep - // the total positive and actually observe baseRodHeat's contribution instead of it being - // swallowed by the floor. - double overHeat = 50.0; - - double heat = CALCULATOR.computeHeat(null, null, inventory, overHeat, displayState, helper.getLevel()); - - helper.assertTrue(Math.abs(heat - (baseRodHeat + overHeat)) < DELTA, - "a cooler contributes its own baseRodHeat exactly like a fuel rod would, when isolated: expected " - + (baseRodHeat + overHeat) + ", got " + heat); - helper.succeed(); - } - - // ================================================================ - // 3. fuel/cooler mix adjacency: cooler scans its own fuel neighbors symmetrically - // to a fuel rod (AUDIT_ACTUEL.md §2.2, fixed 2026-07-26 to match the wiki - // calculator / external spec: "Graphite extra: -1/4Q of the heating rod") - // ================================================================ - - /** - * Layout (row 3 of {@code formattedPattern}, three consecutive slots): - * uranium A (18) - thorium B (19) - graphite C (20). - *

- * Expected total = sum of each rod's own baseRodHeat, PLUS proximity contributions from - * both fuel-fuel and cooler-fuel adjacency (cooler-cooler and fuel-cooler-from-the-fuel-side - * contribute nothing): - *

    - *
  • A's scan (fuel, neighbor B is fuel) -> + A.proximityRodHeat()
  • - *
  • B's scan (fuel, neighbor A is fuel) -> + B.proximityRodHeat()
  • - *
  • B's scan (fuel, neighbor C is cooler) -> contributes nothing (fuel only scores against fuel neighbors)
  • - *
  • C's scan (cooler, neighbor B is fuel) -> + B.baseRodHeat() * C.proximityRodHeat()
  • - *
- */ - @GameTest(template = STRUCTURE) - public static void fuelCoolerMix_coolerScansItsOwnFuelNeighborsSymmetrically(GameTestHelper helper) { - Item uranium = CNItems.URANIUM_ROD.get(); - Item thorium = CNItems.THORIUM_ROD.get(); - Item graphite = CNItems.GRAPHITE_ROD.get(); - - int uraniumBase = CNConfigs.server().rods.uraniumBaseValue.get(); - float uraniumProxy = CNConfigs.server().rods.uraniumProximityBonus.get(); - int thoriumBase = CNConfigs.server().rods.baseValueThorium.get(); - float thoriumProxy = CNConfigs.server().rods.thoriumProxyBonus.get(); - int graphiteBase = CNConfigs.server().rods.graphiteBaseValue.get(); - float graphiteProxy = CNConfigs.server().rods.graphiteProximityMalus.getF(); - - ReactorControllerInventory inventory = placeController(helper, new BlockPos(1, 1, 1)); - loadPattern(inventory, Map.of(18, uranium, 19, thorium, 20, graphite)); - - ReactorDisplayState displayState = new ReactorDisplayState( - Map.of(uranium, 1, thorium, 1, graphite, 1), List.of(), 0); - - double heat = CALCULATOR.computeHeat(null, null, inventory, /*overHeat*/ 0.0, displayState, helper.getLevel()); - - double expected = (uraniumBase + thoriumBase + graphiteBase) // each rod's own baseRodHeat - + uraniumProxy // A's scan: fuel neighbor B (thorium) -> addition - + thoriumProxy // B's scan: fuel neighbor A (uranium) -> addition - + (thoriumBase * graphiteProxy); - // C's scan: fuel neighbor B (thorium) -> multiplication (neighbor's base * cooler's own proximity) - // B's scan towards C contributes 0: fuel only scores against fuel neighbors - - helper.assertTrue(Math.abs(heat - expected) < DELTA, - "cooler must score its own malus against its fuel neighbor: expected " - + expected + ", got " + heat); - helper.succeed(); - } - - // ================================================================ - // 4. 3x3 diamond of rods: cross-checked against the community wiki calculator - // ================================================================ - - /** - * Layout (rows 3-5, columns 3-5 of {@code formattedPattern} — a fully interior 3x3 block, - * every position outside it stays empty so neighbor counts match an isolated 3x3 grid): - *
-     * graphite(18) thorium(19) graphite(20)
-     * thorium(27)  uranium(28) thorium(29)
-     * graphite(36) thorium(37) graphite(38)
-     * 
- * With the mod's default balance values this totals {@code 128}, matching the value produced - * by the community wiki calculator for the same pattern (verified by hand during the JS/Java - * comparison audit, see AUDIT_ACTUEL.md §0/§2.2) — but the assertion below is derived from the - * live config, not hardcoded, so it stays correct if the default balance changes: - *
    - *
  • 4 corner graphites, each with 2 thorium neighbors -> - * {@code graphiteBase + 2 * (thoriumBase * graphiteProxy)} each
  • - *
  • 4 edge thoriums, each with 2 graphite neighbors (ignored, cooler) + 1 uranium neighbor (fuel) -> - * {@code thoriumBase + thoriumProxy} each
  • - *
  • 1 center uranium, with 4 thorium neighbors (all fuel) -> - * {@code uraniumBase + 4 * uraniumProxy}
  • - *
- */ - @GameTest(template = STRUCTURE) - public static void threeByThreeDiamond_matchesWikiCalculatorReferenceValue(GameTestHelper helper) { - Item uranium = CNItems.URANIUM_ROD.get(); - Item thorium = CNItems.THORIUM_ROD.get(); - Item graphite = CNItems.GRAPHITE_ROD.get(); - - int uraniumBase = CNConfigs.server().rods.uraniumBaseValue.get(); - float uraniumProxy = CNConfigs.server().rods.uraniumProximityBonus.get(); - int thoriumBase = CNConfigs.server().rods.baseValueThorium.get(); - float thoriumProxy = CNConfigs.server().rods.thoriumProxyBonus.get(); - int graphiteBase = CNConfigs.server().rods.graphiteBaseValue.get(); - float graphiteProxy = CNConfigs.server().rods.graphiteProximityMalus.getF(); - - ReactorControllerInventory inventory = placeController(helper, new BlockPos(1, 1, 1)); - loadPattern(inventory, Map.ofEntries( - Map.entry(18, graphite), Map.entry(19, thorium), Map.entry(20, graphite), - Map.entry(27, thorium), Map.entry(28, uranium), Map.entry(29, thorium), - Map.entry(36, graphite), Map.entry(37, thorium), Map.entry(38, graphite) - )); - - ReactorDisplayState displayState = new ReactorDisplayState( - Map.of(uranium, 1, thorium, 4, graphite, 4), List.of(), 0); - - double heat = CALCULATOR.computeHeat(null, null, inventory, /*overHeat*/ 0.0, displayState, helper.getLevel()); - - double cornerGraphite = graphiteBase + 2 * (thoriumBase * graphiteProxy); - double edgeThorium = thoriumBase + thoriumProxy; - double centerUranium = uraniumBase + 4 * uraniumProxy; - double expected = 4 * cornerGraphite + 4 * edgeThorium + centerUranium; - - helper.assertTrue(Math.abs(heat - expected) < DELTA, - "3x3 diamond should match the wiki calculator's reference value for this pattern: expected " - + expected + " (128 with default balance), got " + heat); - helper.succeed(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/gametest/ReactorInputFluidManagerGameTest.java b/src/main/java/net/nuclearteam/createnuclear/gametest/ReactorInputFluidManagerGameTest.java deleted file mode 100644 index 852f29978..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/gametest/ReactorInputFluidManagerGameTest.java +++ /dev/null @@ -1,453 +0,0 @@ -package net.nuclearteam.createnuclear.gametest; - -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.gametest.framework.GameTest; -import net.minecraft.gametest.framework.GameTestHelper; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.material.Fluids; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.IFluidHandler.FluidAction; -import net.minecraftforge.gametest.GameTestHolder; -import net.minecraftforge.gametest.PrefixGameTestTemplate; -import net.minecraftforge.registries.ForgeRegistries; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.content.multiblock.controller.manager.ReactorInputFluidManager; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.ReactorFluidInputEntity; -import net.nuclearteam.createnuclear.content.multiblock.input.fluid.VirtualReactorInputFluid; -import net.nuclearteam.createnuclear.foundation.block.MultiDirectionalReactorBlock; - -import java.util.List; - -/** - * GameTest coverage for {@link ReactorInputFluidManager}, run against a real - * {@code ServerLevel} and real {@link ReactorFluidInputEntity} blocks (no mocks). - *

- * All tests share the "empty_platform" structure - * (data/createnuclear/structures/empty_platform.nbt): a 5x3x5 area with a - * stone floor at y=0, leaving y=1..2 free to place fluid input blocks. The structure - * is a real compressed structure-block export (a hand-authored .snbt cannot be loaded - * directly here: Forge only auto-discovers packaged ".nbt" structures under - * data/<namespace>/structures/, not loose ".snbt" text unless it also sits on disk - * relative to the run's working directory). - *

- * Tests named "*_expectedContract" cover the two extractFluids defects fixed on both branches: - * fluidNeeded was never decremented between handlers (so a request of 10 units drained 10 from - * EVERY input), and a request for exactly one unit was silently dropped by an - * {@code if (toExtract > 1)} guard. The whole suite passes; the two characterization tests that - * pinned the buggy behaviour were removed with the fix. - */ -@GameTestHolder(CreateNuclear.MOD_ID) -@PrefixGameTestTemplate(false) -public class ReactorInputFluidManagerGameTest { - - private static final String STRUCTURE = "empty_platform"; - - // ---------- test fixtures ---------- - - private static void place(GameTestHelper helper, BlockPos rel, Direction facing) { - helper.setBlock(rel, CNBlocks.REACTOR_FLUID_INPUT.get().defaultBlockState() - .setValue(MultiDirectionalReactorBlock.FACING, facing)); - } - - private static ReactorFluidInputEntity entity(GameTestHelper helper, BlockPos rel) { - return (ReactorFluidInputEntity) helper.getBlockEntity(rel); - } - - private static void fill(GameTestHelper helper, BlockPos rel, FluidStack stack) { - entity(helper, rel).getCapability(ForgeCapabilities.FLUID_HANDLER) - .ifPresent(h -> h.fill(stack, FluidAction.EXECUTE)); - } - - private static int tankAmount(GameTestHelper helper, BlockPos rel) { - return entity(helper, rel).getCapability(ForgeCapabilities.FLUID_HANDLER) - .map(h -> h.getFluidInTank(0).getAmount()) - .orElse(-1); - } - - private static ReactorInputFluidManager manager(GameTestHelper helper, BlockPos... relPositions) { - ReactorInputFluidManager manager = new ReactorInputFluidManager(); - for (BlockPos rel : relPositions) manager.addBlock(helper.absolutePos(rel)); - return manager; - } - - // ================================================================ - // read / write (pure NBT, no world interaction required) - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void read_absentKey_leavesEmpty(GameTestHelper helper) { - ReactorInputFluidManager manager = new ReactorInputFluidManager(); - manager.read(new CompoundTag()); - - helper.assertTrue(manager.size() == 0, "expected no tracked positions when NBT key is absent"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void read_clearsPreviousPositions(GameTestHelper helper) { - ReactorInputFluidManager manager = new ReactorInputFluidManager(); - manager.addBlock(new BlockPos(1, 2, 3)); - - manager.read(new CompoundTag()); - - helper.assertTrue(manager.size() == 0, "read() must clear previously tracked positions before loading"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void read_singleEntry_roundTrips(GameTestHelper helper) { - CompoundTag entry = new CompoundTag(); - entry.putInt("x", 5); - entry.putInt("y", 64); - entry.putInt("z", -3); - ListTag list = new ListTag(); - list.add(entry); - CompoundTag root = new CompoundTag(); - root.put("ReactorInputFluid", list); - - ReactorInputFluidManager manager = new ReactorInputFluidManager(); - manager.read(root); - - helper.assertTrue(manager.size() == 1, "expected exactly one entry after read"); - helper.assertTrue(manager.contains(new BlockPos(5, 64, -3)), "expected BlockPos(5,64,-3) to be present"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void read_multipleEntries_preservesOrder(GameTestHelper helper) { - BlockPos a = new BlockPos(0, 0, 0); - BlockPos b = new BlockPos(1, 1, 1); - BlockPos c = new BlockPos(2, 2, 2); - - ListTag list = new ListTag(); - for (BlockPos p : List.of(a, b, c)) { - CompoundTag entry = new CompoundTag(); - entry.putInt("x", p.getX()); - entry.putInt("y", p.getY()); - entry.putInt("z", p.getZ()); - list.add(entry); - } - CompoundTag root = new CompoundTag(); - root.put("ReactorInputFluid", list); - - ReactorInputFluidManager manager = new ReactorInputFluidManager(); - manager.read(root); - - helper.assertTrue(manager.getBlocksPosition().equals(List.of(a, b, c)), - "expected insertion order to be preserved, found " + manager.getBlocksPosition()); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void write_emptyPositions_stillWritesKey(GameTestHelper helper) { - CompoundTag tag = new CompoundTag(); - new ReactorInputFluidManager().write(tag); - - helper.assertTrue(tag.contains("ReactorInputFluid"), "write() should always write the NBT key, even when empty"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void write_then_read_roundTrip(GameTestHelper helper) { - BlockPos a = new BlockPos(1, 2, 3); - BlockPos b = new BlockPos(-5, 64, 100); - - ReactorInputFluidManager original = new ReactorInputFluidManager(); - original.addBlock(a); - original.addBlock(b); - - CompoundTag tag = new CompoundTag(); - original.write(tag); - - ReactorInputFluidManager restored = new ReactorInputFluidManager(); - restored.read(tag); - - helper.assertTrue(restored.getBlocksPosition().equals(List.of(a, b)), - "round-trip through NBT should preserve exact positions and order"); - helper.succeed(); - } - - // ================================================================ - // clearInvalid - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void clearInvalid_missingBlockEntity_removesPosition(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); // never placed: air, no block entity - ReactorInputFluidManager manager = manager(helper, rel); - - manager.clearInvalid(helper.getLevel()); - - helper.assertTrue(manager.size() == 0, "a position without a block entity should be removed"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void clearInvalid_noCapability_removesPosition(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - helper.setBlock(rel, Blocks.CHEST.defaultBlockState()); // real BE, no fluid capability - ReactorInputFluidManager manager = manager(helper, rel); - - manager.clearInvalid(helper.getLevel()); - - helper.assertTrue(manager.size() == 0, "a block entity without a fluid capability should be removed"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void clearInvalid_validCapability_keepsPosition(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - ReactorInputFluidManager manager = manager(helper, rel); - - manager.clearInvalid(helper.getLevel()); - - helper.assertTrue(manager.size() == 1, "a valid ReactorFluidInputEntity should be kept"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void clearInvalid_mixedSet_onlyInvalidRemoved(GameTestHelper helper) { - BlockPos valid = new BlockPos(1, 1, 1); - BlockPos chest = new BlockPos(3, 1, 1); - BlockPos missing = new BlockPos(1, 1, 3); - - place(helper, valid, Direction.NORTH); - helper.setBlock(chest, Blocks.CHEST.defaultBlockState()); - - ReactorInputFluidManager manager = manager(helper, valid, chest, missing); - manager.clearInvalid(helper.getLevel()); - - helper.assertTrue(manager.getBlocksPosition().equals(List.of(helper.absolutePos(valid))), - "only the valid fluid input position should remain, found " + manager.getBlocksPosition()); - helper.succeed(); - } - - // ================================================================ - // getBlocksPosition(Level) - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void getBlocksPosition_filtersNonMatchingEntityType(GameTestHelper helper) { - BlockPos validRel = new BlockPos(1, 1, 1); - BlockPos otherRel = new BlockPos(3, 1, 1); - place(helper, validRel, Direction.NORTH); - helper.setBlock(otherRel, Blocks.CHEST.defaultBlockState()); - - ReactorInputFluidManager manager = manager(helper, validRel, otherRel); - - List result = manager.getBlocksPosition(helper.getLevel()); - - helper.assertTrue(result.equals(List.of(helper.absolutePos(validRel))), - "only the ReactorFluidInputEntity position should be returned, found " + result); - helper.succeed(); - } - - // ================================================================ - // getFuildHandlers - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void getFuildHandlers_capabilityPresent_included(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - fill(helper, rel, new FluidStack(Fluids.WATER, 500)); - - List handlers = manager(helper, rel).getFuildHandlers(helper.getLevel()); - - helper.assertTrue(handlers.size() == 1, "expected exactly one handler"); - helper.assertTrue(handlers.get(0).getFluidInTank(0).getAmount() == 500, - "handler should expose the filled tank content"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void getFuildHandlers_preservesTrackingOrder(GameTestHelper helper) { - BlockPos rel1 = new BlockPos(1, 1, 1); - BlockPos rel2 = new BlockPos(3, 1, 1); - place(helper, rel1, Direction.NORTH); - place(helper, rel2, Direction.NORTH); - fill(helper, rel1, new FluidStack(Fluids.WATER, 100)); - fill(helper, rel2, new FluidStack(Fluids.LAVA, 200)); - - List handlers = manager(helper, rel1, rel2).getFuildHandlers(helper.getLevel()); - - helper.assertTrue(handlers.size() == 2, "expected two handlers"); - helper.assertTrue(handlers.get(0).getFluidInTank(0).getFluid() == Fluids.WATER, - "first handler should be the water tank (matches insertion order)"); - helper.assertTrue(handlers.get(1).getFluidInTank(0).getFluid() == Fluids.LAVA, - "second handler should be the lava tank (matches insertion order)"); - helper.succeed(); - } - - // ================================================================ - // getInventory - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void getInventory_noHandlers_returnsEmpty(GameTestHelper helper) { - VirtualReactorInputFluid inventory = new ReactorInputFluidManager().getInventory(helper.getLevel()); - - helper.assertTrue(inventory.fluids().isEmpty(), "expected an empty inventory with no tracked handlers"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void getInventory_aggregatesAcrossHandlers(GameTestHelper helper) { - BlockPos rel1 = new BlockPos(1, 1, 1); - BlockPos rel2 = new BlockPos(3, 1, 1); - place(helper, rel1, Direction.NORTH); - place(helper, rel2, Direction.NORTH); - fill(helper, rel1, new FluidStack(Fluids.WATER, 300)); - fill(helper, rel2, new FluidStack(Fluids.WATER, 250)); - - VirtualReactorInputFluid inventory = manager(helper, rel1, rel2).getInventory(helper.getLevel()); - - ResourceLocation waterId = ForgeRegistries.FLUIDS.getKey(Fluids.WATER); - long total = inventory.getAmount(waterId); - helper.assertTrue(total == 550, "expected aggregated total of 550, found " + total); - helper.succeed(); - } - - // ================================================================ - // extractFluids — core of the audited bug - // ================================================================ - - @GameTest(template = STRUCTURE) - public static void extractFluids_nullLevel_returnsFalse(GameTestHelper helper) { - boolean result = new ReactorInputFluidManager().extractFluids(null, 10); - helper.assertTrue(!result, "extractFluids should return false for a null level"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void extractFluids_noHandlers_returnsFalse(GameTestHelper helper) { - boolean result = new ReactorInputFluidManager().extractFluids(helper.getLevel(), 10); - helper.assertTrue(!result, "extractFluids should return false when there are no handlers"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void extractFluids_singleHandlerEnoughStock_drainsExactAmount(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - fill(helper, rel, new FluidStack(Fluids.WATER, 1000)); - - boolean result = manager(helper, rel).extractFluids(helper.getLevel(), 400); - - helper.assertTrue(result, "extraction should succeed when enough fluid is available"); - helper.assertTrue(tankAmount(helper, rel) == 600, "expected 600 remaining, found " + tankAmount(helper, rel)); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void extractFluids_singleHandlerInsufficientStock_drainsAvailable(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - fill(helper, rel, new FluidStack(Fluids.WATER, 30)); - - boolean result = manager(helper, rel).extractFluids(helper.getLevel(), 100); - - helper.assertTrue(result, "extraction should be reported successful even for a partial drain"); - helper.assertTrue(tankAmount(helper, rel) == 0, "all 30 available units should have been drained"); - helper.succeed(); - } - - /** - * A request for exactly 1 unit with stock available must succeed. This used to fail against - * an {@code if (toExtract > 1)} guard that silently dropped single-unit requests. - */ - @GameTest(template = STRUCTURE) - public static void extractFluids_needOfOne_shouldSucceed_expectedContract(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - fill(helper, rel, new FluidStack(Fluids.WATER, 5)); - - boolean result = manager(helper, rel).extractFluids(helper.getLevel(), 1); - - helper.assertTrue(result, "a request for exactly 1 unit with stock available should succeed"); - helper.assertTrue(tankAmount(helper, rel) == 4, "expected exactly 1 unit to be drained"); - helper.succeed(); - } - - /** - * Extracting 10 units from a 20-unit pool spread across two handlers must leave 10 total - * remaining. The requested amount is a total across every input, not a per-input quota; - * this used to drain both handlers in full because {@code fluidNeeded} was never - * decremented between them. - */ - @GameTest(template = STRUCTURE) - public static void extractFluids_twoHandlers_shouldNotOverExtract_expectedContract(GameTestHelper helper) { - BlockPos rel1 = new BlockPos(1, 1, 1); - BlockPos rel2 = new BlockPos(3, 1, 1); - place(helper, rel1, Direction.NORTH); - place(helper, rel2, Direction.NORTH); - fill(helper, rel1, new FluidStack(Fluids.WATER, 10)); - fill(helper, rel2, new FluidStack(Fluids.WATER, 10)); - - manager(helper, rel1, rel2).extractFluids(helper.getLevel(), 10); - - int totalRemaining = tankAmount(helper, rel1) + tankAmount(helper, rel2); - helper.assertTrue(totalRemaining == 10, - "extracting 10 out of a 20-unit pool should leave 10 total remaining, found " + totalRemaining); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void extractFluids_needZero_leavesTanksUntouched(GameTestHelper helper) { - BlockPos rel1 = new BlockPos(1, 1, 1); - BlockPos rel2 = new BlockPos(3, 1, 1); - place(helper, rel1, Direction.NORTH); - place(helper, rel2, Direction.NORTH); - fill(helper, rel1, new FluidStack(Fluids.WATER, 10)); - fill(helper, rel2, new FluidStack(Fluids.WATER, 10)); - - boolean result = manager(helper, rel1, rel2).extractFluids(helper.getLevel(), 0); - - helper.assertTrue(!result, "a non-positive fluidNeeded should never extract anything"); - helper.assertTrue(tankAmount(helper, rel1) == 10 && tankAmount(helper, rel2) == 10, - "no tank should be touched when fluidNeeded <= 0"); - helper.succeed(); - } - - @GameTest(template = STRUCTURE) - public static void extractFluids_emptyStackHandler_skippedGracefully(GameTestHelper helper) { - BlockPos rel1 = new BlockPos(1, 1, 1); - BlockPos rel2 = new BlockPos(3, 1, 1); - place(helper, rel1, Direction.NORTH); // left empty - place(helper, rel2, Direction.NORTH); - fill(helper, rel2, new FluidStack(Fluids.WATER, 20)); - - boolean result = manager(helper, rel1, rel2).extractFluids(helper.getLevel(), 15); - - helper.assertTrue(result, "the second, non-empty handler should still be usable"); - helper.assertTrue(tankAmount(helper, rel1) == 0, "empty handler should stay untouched"); - helper.assertTrue(tankAmount(helper, rel2) == 5, "expected 15 drained out of 20, 5 remaining"); - helper.succeed(); - } - - /** - * A partial extraction still reports success: the reactor consumes whatever coolant it can - * reach rather than refusing to run. The Javadoc used to promise "true if the full amount - * was extracted", which never matched the implementation; it now documents this contract. - */ - @GameTest(template = STRUCTURE) - public static void extractFluids_partialExtraction_stillReportsSuccess(GameTestHelper helper) { - BlockPos rel = new BlockPos(1, 1, 1); - place(helper, rel, Direction.NORTH); - fill(helper, rel, new FluidStack(Fluids.WATER, 30)); - - boolean result = manager(helper, rel).extractFluids(helper.getLevel(), 100); - - helper.assertTrue(result, "current implementation returns true even for a partial extraction (Javadoc mismatch)"); - helper.assertTrue(tankAmount(helper, rel) == 0, "all available fluid should have been drained"); - helper.succeed(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/impl/registry/CreateNuclearRegistriesImpl.java b/src/main/java/net/nuclearteam/createnuclear/impl/registry/CreateNuclearRegistriesImpl.java deleted file mode 100644 index 649dd884e..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/impl/registry/CreateNuclearRegistriesImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -package net.nuclearteam.createnuclear.impl.registry; - -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod.EventBusSubscriber.Bus; -import net.minecraftforge.fml.common.Mod.EventBusSubscriber; -import net.minecraftforge.registries.DataPackRegistryEvent; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.api.multiblock.fluid.ReactorFluidType; -import net.nuclearteam.createnuclear.api.multiblock.rods.RodType; -import org.jetbrains.annotations.ApiStatus.Internal; - -@EventBusSubscriber(bus = Bus.MOD) -public class CreateNuclearRegistriesImpl { - @Internal - @SubscribeEvent - public static void registerDatapackRegistries(DataPackRegistryEvent.NewRegistry event) { - event.dataPackRegistry( - CreateNuclearRegistries.ROD_TYPE, - RodType.CODEC, - RodType.CODEC - ); - - event.dataPackRegistry( - CreateNuclearRegistries.FLUID_TYPE, - ReactorFluidType.CODEC, - ReactorFluidType.CODEC - ); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CBiomeRestore.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CBiomeRestore.java deleted file mode 100644 index 38721c2e9..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CBiomeRestore.java +++ /dev/null @@ -1,21 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.config; - -import net.createmod.catnip.config.ConfigBase; - -public class CBiomeRestore extends ConfigBase { - public final ConfigInt maxCharge = i(8, 1, 64, "maxCharge", Comments.maxCharge); - public final ConfigBool restoreInCircle = b(false, "restoreInCircle", Comments.restoreInCircle); - public final ConfigInt restoreRadiusChunks = i(1, 1, 3, "restoreRadiusChunks", Comments.restoreRadiusChunks); - - @Override - public String getName() { - return "BiomeRestore"; - } - - private static class Comments { - static String maxCharge = "Maximum number of charges the Biome Restore Cell can hold."; - static String restoreInCircle = "If true, restoring a chunk also restores nearby chunks in a circle " - + "(see restoreRadiusChunks). If false, only the chunk the player stands in is restored."; - static String restoreRadiusChunks = "Radius in chunks used when restoreInCircle is true (1 to 3)."; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplode.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplode.java deleted file mode 100644 index 0a5d60c1d..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplode.java +++ /dev/null @@ -1,20 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.config; - -import net.createmod.catnip.config.ConfigBase; - -public class CExplode extends ConfigBase { - public final ConfigInt size = i(10, "Explosion size (radius in blocks)"); - public final ConfigInt type = i(1, 0, 2, "Type of explosion", Comments.type); - public final ConfigInt time = i(600, 100, 1200, "Delay before explosion (ticks)", Comments.explosionTime, Comments.hintExplosion); - - @Override - public String getName() { - return "Explosion Reactor"; - } - - private static class Comments { - static String explosionTime = "Delay before the nuclear explosion (in ticks)."; - static String hintExplosion = "300 ticks = 15 seconds."; - static String type = "0 = none, 1 = current explosion behavior, 2 = alternative explosion behavior."; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplose.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplose.java new file mode 100644 index 000000000..1f2716747 --- /dev/null +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CExplose.java @@ -0,0 +1,20 @@ +package net.nuclearteam.createnuclear.infrastructure.config; + +import net.createmod.catnip.config.ConfigBase; + +public class CExplose extends ConfigBase { + public final ConfigInt size = i(10, "Size of the reactor explosion"); + public final ConfigInt type = i(1, 0, 2, "Type of explosion", Comments.type); + public final ConfigInt time = i(600, 100, 1200, "Duration before exploration", Comments.explosionTime, Comments.hintExplosion); + + @Override + public String getName() { + return "Explosion Reactor"; + } + + private static class Comments { + static String explosionTime = "Create Nuclear Explosion Time"; + static String hintExplosion = "300 ticks = 15 seconds"; + static String type = "Explanation: 0 = no explosion, 1 = current explosion, 2 = new explosion."; + } +} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCClient.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCClient.java index 86b0a4642..0bbd8993d 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCClient.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCClient.java @@ -1,17 +1,4 @@ package net.nuclearteam.createnuclear.infrastructure.config; -import net.createmod.catnip.config.ConfigBase; - -public class CNCClient extends ConfigBase { - public final ConfigBool nuclearBombFlash = b(true, "nuclear_bomb_flash", Comments.nuclearBombFlash); - public final ConfigBool screenShaking = b(true, "screen_shake", Comments.screenShaking); - - - @Override - public String getName() { return "Client"; } - - private static class Comments { - static String nuclearBombFlash = "Enable the bright flash at the start of a nuclear explosion."; - static String screenShaking = "Enable screen shake effect during a nuclear explosion."; - } -} \ No newline at end of file +public class CNCClient { +} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCCommon.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCCommon.java index 5cd2e69a0..cf642f723 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCCommon.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCCommon.java @@ -4,6 +4,8 @@ public class CNCCommon extends ConfigBase { public final CWorldGen worldGen = nested(0, CWorldGen::new, Comments.worldGen); + public final CRods rods = nested(0, CRods::new, Comments.rods); + public final CExplose explode = nested(0, CExplose::new, Comments.explode); @Override public String getName() { @@ -11,6 +13,8 @@ public String getName() { } private static class Comments { - static String worldGen = "Modify how CreateNuclear affects world generation."; + static String worldGen = "Modify CreateNuclear's impact on your terrain"; + static String rods = "Modify rods time and config"; + static String explode = "Explose: pas d'idée"; } -} \ No newline at end of file +} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCServer.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCServer.java index 3924a0fff..6192b4d5e 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCServer.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNCServer.java @@ -1,26 +1,4 @@ package net.nuclearteam.createnuclear.infrastructure.config; -import net.createmod.catnip.config.ConfigBase; - -public class CNCServer extends ConfigBase { - public final CRods rods = nested(0, CRods::new, Comments.rods); - public final CNotify notify = nested(0, CNotify::new, Comments.notify); - public final CRadiation radiation = nested(0, CRadiation::new, Comments.radiation); - public final CReactorHeat reactorHeat = nested(0, CReactorHeat::new, Comments.reactorHeat); - public final CBiomeRestore biomeRestore = nested(0, CBiomeRestore::new, Comments.biomeRestore); - - - @Override - public String getName() { - return "Server"; - } - - private static class Comments { - static String rods = "Modify rod durations and related parameters."; - static String radiation = "Enable or disable radiation effects emitted by mod items. "; - static String notify = "Notification settings for reactor warnings."; - static String reactorHeat = "Heat thresholds for different reactor sizes"; - static String biomeRestore = ""; - - } -} \ No newline at end of file +public class CNCServer { +} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNConfigs.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNConfigs.java index 09cd4462f..6a3434a7f 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNConfigs.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNConfigs.java @@ -23,18 +23,10 @@ public class CNConfigs { private static CNCCommon common; private static CNCServer server; - public static CNCClient client() { - return client; - } - public static CNCCommon common() { return common; } - public static CNCServer server() { - return server; - } - public static ConfigBase byType(ModConfig.Type type) { return CONFIGS.get(type); } @@ -54,8 +46,6 @@ private static T register(Supplier factory, ModConfig. public static void register(ModLoadingContext context) { common = register(CNCCommon::new, ModConfig.Type.COMMON); - server = register(CNCServer::new, ModConfig.Type.SERVER); - client = register(CNCClient::new, ModConfig.Type.CLIENT); for (Entry entry : CONFIGS.entrySet()) { context.registerConfig(entry.getKey(), entry.getValue().specification); diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNotify.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNotify.java deleted file mode 100644 index 7ef0c44f2..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CNotify.java +++ /dev/null @@ -1,18 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.config; - -import net.createmod.catnip.config.ConfigBase; - -public class CNotify extends ConfigBase { - public final ConfigBool warnAllPlayers = b(false, "warn_all_players", Comments.warning); - public final ConfigInt warningDistance = i(100, 30, 5000, "warning_distance_blocks", Comments.rangeOfWarning); - - @Override - public String getName() { - return "Notify"; - } - - private static class Comments { - static String warning = "When true, broadcast a warning to nearby players before a reactor explosion."; - static String rangeOfWarning = "Distance (in blocks) to search for players to warn about impending explosion."; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRadiation.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRadiation.java deleted file mode 100644 index a0c0f3502..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRadiation.java +++ /dev/null @@ -1,71 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.config; - -import net.createmod.catnip.config.ConfigBase; -import net.minecraft.MethodsReturnNonnullByDefault; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.common.ForgeConfigSpec.ConfigValue; - -import java.util.List; - -@MethodsReturnNonnullByDefault -public class CRadiation extends ConfigBase { - public final ConfigBool enabledItemRadiation = b(true, "enabled_item_radiation", Comments.enabled); - public final ConfigInt radiationLevel1 = i(10, 0, 50, "radiation_level_1", Comments.radiationLevel1); - public final ConfigInt radiationLevel2 = i(25, 0, 50, "radiation_level_2", Comments.radiationLevel2); - public final ConfigInt radiationLevel3 = i(50, 0, 50, "radiation_level_3", Comments.radiationLevel3); - public final ConfigInt amplifierLevel0 = i(0, 0, 10, "amplifier_level_0", Comments.amplifierLevel0); - public final ConfigInt amplifierLevel1 = i(1, 0, 10, "amplifier_level_1", Comments.amplifierLevel1); - public final ConfigInt amplifierLevel2 = i(2, 0, 10, "amplifier_level_2", Comments.amplifierLevel2); - public final ConfiguredLists configuredLists = nested(0, ConfiguredLists::new, Comments.list); - - @Override - public String getName() { - return "Radiation"; - } - - private static class Comments { - static String enabled = "When enabled, certain items may emit radiation affecting players and nearby entities. Disable to turn off radiation effects without removing items."; - static String radiationLevel1 = "Minimum radiation value required to apply Radiation I. Values below this do not apply effects."; - static String radiationLevel2 = "Minimum radiation value required to apply Radiation II. Should be greater than radiation_level_1."; - static String radiationLevel3 = "Minimum radiation value required to apply Radiation III. Should be greater than radiation_level_2."; - static String amplifierLevel0 = "Effect amplifier for Radiation I (0 = level I)."; - static String amplifierLevel1 = "Effect amplifier for Radiation II (1 = level II)."; - static String amplifierLevel2 = "Effect amplifier for Radiation III (2 = level III)."; - static String list = "Lists related to radiation configuration, for example the entity blacklist."; - static String blackListEntity = - "List of entity IDs excluded from radiation effects. Use registry names like \"minecraft:armor_stand\".\n\n" - + "How to edit:\n" - + "- Add entries as namespace:entity_name strings.\n" - + "- Example: \"minecraft:armor_stand\"\n" - + "- Remove an entry to stop excluding it.\n"; - } - - public static class ConfiguredLists extends ConfigBase { - private static ConfigValue> ENTITY_BLACKLIST = null; - - @Override - public void registerAll(ForgeConfigSpec.Builder builder) { - - ENTITY_BLACKLIST = builder - .comment(Comments.blackListEntity) - .defineListAllowEmpty( - List.of("entity_blacklist"), - () -> List.of( - "minecraft:armor_stand", - "minecraft:item_frame", - "minecraft:glow_item_frame" - ), - obj -> obj instanceof String - ); - } - - @Override - public String getName() { - return "lists"; - } - - public List getEntityBlackList() { - return ENTITY_BLACKLIST.get(); - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CReactorHeat.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CReactorHeat.java deleted file mode 100644 index 8c070b760..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CReactorHeat.java +++ /dev/null @@ -1,14 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.config; - -import net.createmod.catnip.config.ConfigBase; - -public class CReactorHeat extends ConfigBase { - public final ConfigInt size5Danger = i(256, 0, 8192, "size5Danger", "Heat threshold for DANGER level (5x5 reactor)"); - public final ConfigInt size7Danger = i(1024, 0, 8192, "size7Danger", "Heat threshold for DANGER level (7x7 reactor)"); - public final ConfigInt size9Danger = i(4096, 0, 8192, "size9Danger", "Heat threshold for DANGER level (9x9 reactor)"); - - @Override - public String getName() { - return "ReactorHeat"; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRods.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRods.java index ec7edcdca..947b9f432 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRods.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CRods.java @@ -1,51 +1,22 @@ package net.nuclearteam.createnuclear.infrastructure.config; import net.createmod.catnip.config.ConfigBase; -import net.minecraft.MethodsReturnNonnullByDefault; -@MethodsReturnNonnullByDefault public class CRods extends ConfigBase { - public final ConfigInt uraniumRodLifetime = i(3600, 100, 5000, "uranium_rod_lifetime_ticks", Comments.uraniumRodLifetime, Comments.hintTick); - public final ConfigInt uraniumProximityBonus = i(32, -70, 70, "uranium_proximity_bonus", Comments.warning, Comments.uraniumProximityBonus); - public final ConfigInt uraniumBaseValue = i(64, -70, 70, "uranium_base_value", Comments.warning, Comments.uraniumBaseValue); - public final ConfigInt uraniumHeatRatio = i(2, -10, 10, "Heat ratio for uranium rods", Comments.warning, Comments.uraniumHeatRatio); - - public final ConfigInt graphiteRodLifetime = i(3600, 100, 5000, "graphite_rod_lifetime_ticks", Comments.graphiteRodLifetime, Comments.hintTick); - // the proximity value of coolant items are divisions so if the heat of the fuel is 64, the calcul will be "heat + 64/-4" - public final ConfigFloat graphiteProximityMalus = f(-0.25f, -70, 70, "graphite_proximity_penalty", Comments.warning, Comments.graphiteProximityMalus); - public final ConfigInt graphiteBaseValue = i(-32, -50, 50, "graphite_base_value", Comments.warning, Comments.graphiteBaseValue); - public final ConfigInt graphiteHeatRatio = i(1, -10, 10, "Heat ratio for graphite rods", Comments.warning, Comments.graphiteHeatRatio); - - public final ConfigInt thoriumRodLifetime = i(3600, 100, 5000, "Thorium rod lifetime (in ticks)", Comments.thoriumRodLifetime, Comments.hintTick); - public final ConfigInt thoriumProxyBonus = i(8, -70, 70, "Heat bonus from nearby thorium rods", Comments.warning, Comments.thoriumProximityBonus); - public final ConfigInt baseValueThorium = i(16, -70, 70, "Base heat value for thorium rods", Comments.warning, Comments.thoriumBaseValue); - public final ConfigInt thoriumHeatRatio = i(1, -10, 10, "Heat ratio for thorium rods", Comments.warning, Comments.thoriumHeatRatio); - + public final ConfigInt uraniumRodLifetime = i(3600, 100, 5000, "Uranium rod lifespan", Comments.UraniumRodLifetime, Comments.hintTick); + public final ConfigInt graphiteRodLifetime = i(3600, 100, 5000, "Graphite rod lifespan", Comments.GraphiteRodLifetime, Comments.hintTick); + public final ConfigInt maxHeat = i(1000, 200, 1000, "Maximum reactor heat", Comments.maxHeat, Comments.hintHeat); @Override public String getName() { - return "rods"; + return "Rods"; } private static class Comments { static String hintTick = "20 ticks = 1 second"; - static String warning = "Changing these values may unbalance reactor behavior."; - static String maxFuelPerCooled = "Maximum fuel rods supported by a single cooled rod"; - - static String uraniumRodLifetime = "Lifetime of uranium rods in ticks."; - static String uraniumProximityBonus = "Heat bonus applied when uranium rods are adjacent."; - static String uraniumBaseValue = "Base heat contribution of a uranium rod before modifiers."; - static String uraniumHeatRatio = "Heat ratio modifier for a uranium rod"; - - static String graphiteRodLifetime = "Lifetime of graphite (cooling) rods in ticks."; - static String graphiteProximityMalus = "Heat penalty applied when graphite rods are adjacent."; - static String graphiteBaseValue = "Base heat contribution of a graphite rod before modifiers."; - static String graphiteHeatRatio = "Heat ratio modifier for a graphite rod"; - - static String thoriumRodLifetime = "Lifetime of thorium rods in the reactor"; - static String thoriumProximityBonus = "Bonus heat applied when thorium rods are adjacent"; - static String thoriumBaseValue = "Base heat contribution of a thorium rod before modifiers"; - static String thoriumHeatRatio = "Heat ratio modifier for a thorium rod"; - + static String UraniumRodLifetime = "Uranium rod lifespan in reactor"; + static String GraphiteRodLifetime = "Graphite rod lifespan in reactor"; + static String maxHeat = "Maximum heat a reactor block can handle"; + static String hintHeat = "Avoids reactor failure due to excessive heat"; } -} \ No newline at end of file +} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CWorldGen.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CWorldGen.java index b4c66b33d..ea7de34eb 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CWorldGen.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/config/CWorldGen.java @@ -3,7 +3,7 @@ import net.createmod.catnip.config.ConfigBase; public class CWorldGen extends ConfigBase { - public final ConfigBool enable = b(true, "enable_world_gen", Comments.enable); + public final ConfigBool disable = b(false, "disableWorldGen", Comments.disable); @Override public String getName() { @@ -11,6 +11,6 @@ public String getName() { } private static class Comments { - static String enable = "When true, CreateNuclear world generation features are active. Set to false to disable all added ores/structures."; + static String disable = "Prevents all worldgen added by Create from taking effect"; } } diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearDatagen.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearDatagen.java index 90cf0d31f..bf8ccbe5b 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearDatagen.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearDatagen.java @@ -10,11 +10,11 @@ import net.minecraft.data.PackOutput; import net.minecraftforge.common.data.ExistingFileHelper; import net.minecraftforge.data.event.GatherDataEvent; -import net.nuclearteam.createnuclear.CNSoundEvents; import net.nuclearteam.createnuclear.CreateNuclear; import net.nuclearteam.createnuclear.foundation.advancement.CNAdvancement; import net.nuclearteam.createnuclear.foundation.data.recipe.CNMechanicalCraftingRecipeGen; import net.nuclearteam.createnuclear.foundation.data.recipe.CNProcessingRecipeGen; +import net.nuclearteam.createnuclear.foundation.data.recipe.CNShapelessRecipeGen; import net.nuclearteam.createnuclear.foundation.data.recipe.CNStandardRecipeGen; import net.nuclearteam.createnuclear.foundation.ponder.CreateNuclearPonderPlugin; @@ -31,15 +31,15 @@ public static void gatherData(GatherDataEvent event) { CompletableFuture lookupProvider = event.getLookupProvider(); ExistingFileHelper existingFileHelper = event.getExistingFileHelper(); - generator.addProvider(event.includeClient(), CNSoundEvents.provider(generator)); - GeneratedEntriesProvider generatedEntriesProvider = new GeneratedEntriesProvider(output, lookupProvider); lookupProvider = generatedEntriesProvider.getRegistryProvider(); generator.addProvider(event.includeClient(), generatedEntriesProvider); generator.addProvider(event.includeClient(), new CNStandardRecipeGen(output)); +// generator.addProvider(event.includeClient(), new CNShapelessRecipeGen(output)); generator.addProvider(event.includeClient(), new CNMechanicalCraftingRecipeGen(output)); generator.addProvider(event.includeClient(), new CNAdvancement(output)); + /*if (event.includeClient()) { }*/ @@ -59,9 +59,7 @@ private static void addExtraRegistrateData() { provideDefaultLang("potion", langConsumer); provideDefaultLang("tooltips", langConsumer); provideDefaultLang("reactor", langConsumer); - provideDefaultLang("irradiated", langConsumer); CNAdvancement.provideLang(langConsumer); - CNSoundEvents.provideLang(langConsumer); providePonderLang(langConsumer); }); } diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearRegistrateTags.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearRegistrateTags.java index 974c0a5b9..c023ed496 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearRegistrateTags.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/CreateNuclearRegistrateTags.java @@ -1,19 +1,16 @@ package net.nuclearteam.createnuclear.infrastructure.data; -import com.simibubi.create.AllItems; import com.simibubi.create.foundation.data.TagGen.CreateTagsProvider; import com.tterrag.registrate.providers.ProviderType; import com.tterrag.registrate.providers.RegistrateTagsProvider; import net.minecraft.tags.BlockTags; import net.minecraft.tags.EntityTypeTags; import net.minecraft.tags.FluidTags; -import net.minecraft.tags.ItemTags; import net.minecraft.world.entity.EntityType; import net.minecraft.world.item.Item; -import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.material.Fluid; +import net.minecraftforge.common.Tags; import net.nuclearteam.createnuclear.CNBlocks; import net.nuclearteam.createnuclear.CNEntityType; import net.nuclearteam.createnuclear.CNTags; @@ -46,10 +43,6 @@ private static void genBlockTags(RegistrateTagsProvider provIn) { .add(CNBlocks.ENRICHING_FIRE.get()) ; - prov.tag(CNBlockTags.FAN_PROCESSING_CATALYSTS_SNOW_POWDER.tag) - .add(Blocks.POWDER_SNOW) - ; - for (CNBlockTags tag : CNBlockTags.values()) { if (tag.alwaysDatagen) { prov.getOrCreateRawBuilder(tag.tag); @@ -78,10 +71,6 @@ private static void genFluidTags(RegistrateTagsProvider provIn) { .addTag(CNFluidTags.URANIUM.tag) ; - prov.tag(FluidTags.WATER) - .addTag(CNFluidTags.NITROGEN.tag) - ; - for (CNFluidTags tag : CNFluidTags.values()) { if (tag.alwaysDatagen) { diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/GeneratedEntriesProvider.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/GeneratedEntriesProvider.java index 6f8eadb28..e13ab777a 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/GeneratedEntriesProvider.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/data/GeneratedEntriesProvider.java @@ -9,16 +9,9 @@ import net.minecraftforge.registries.ForgeRegistries; import net.nuclearteam.createnuclear.CNDamageTypes; import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.api.CreateNuclearRegistries; -import net.nuclearteam.createnuclear.content.multiblock.fluid.CNReactorFluidTypes; -import net.nuclearteam.createnuclear.content.multiblock.rod.CNRodTypes; import net.nuclearteam.createnuclear.infrastructure.worldgen.CNBiomeModifiers; import net.nuclearteam.createnuclear.infrastructure.worldgen.CNConfiguredFeatures; import net.nuclearteam.createnuclear.infrastructure.worldgen.CNPlacedFeatures; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNBiomes; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNDensityFunctions; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNNoiseData; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNNoiseGeneratorSettings; import java.util.Set; import java.util.concurrent.CompletableFuture; @@ -26,17 +19,11 @@ public class GeneratedEntriesProvider extends DatapackBuiltinEntriesProvider { @SuppressWarnings({ "rawtypes", "unchecked" }) private static final RegistrySetBuilder BUILDER = new RegistrySetBuilder() - .add(Registries.DAMAGE_TYPE, CNDamageTypes::bootstrap) - .add(Registries.CONFIGURED_FEATURE, (RegistryBootstrap) CNConfiguredFeatures::bootstrap) - .add(Registries.PLACED_FEATURE, CNPlacedFeatures::bootstrap) - .add(ForgeRegistries.Keys.BIOME_MODIFIERS, CNBiomeModifiers::bootstrap) - .add(Registries.BIOME, CNBiomes::bootstrapRegistries) - .add(Registries.DENSITY_FUNCTION, CNDensityFunctions::bootstrapRegistries) - .add(Registries.NOISE_SETTINGS, CNNoiseGeneratorSettings::bootstrapRegistries) - .add(Registries.NOISE, CNNoiseData::bootstrapRegistries) - .add(CreateNuclearRegistries.ROD_TYPE, CNRodTypes::bootstrap) - .add(CreateNuclearRegistries.FLUID_TYPE, CNReactorFluidTypes::bootstrap) - ; + .add(Registries.DAMAGE_TYPE, CNDamageTypes::bootstrap) + .add(Registries.CONFIGURED_FEATURE, (RegistryBootstrap) CNConfiguredFeatures::bootstrap) + .add(Registries.PLACED_FEATURE, CNPlacedFeatures::bootstrap) + .add(ForgeRegistries.Keys.BIOME_MODIFIERS, CNBiomeModifiers::bootstrap) + ; public GeneratedEntriesProvider(PackOutput output, CompletableFuture registries) { super(output, registries, BUILDER, Set.of(CreateNuclear.MOD_ID)); diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/scenes/CNPonderReactorScenes.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/scenes/CNPonderReactorScenes.java deleted file mode 100644 index f5e43efac..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/ponder/scenes/CNPonderReactorScenes.java +++ /dev/null @@ -1,348 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.ponder.scenes; - -import net.createmod.catnip.math.Pointing; -import net.createmod.ponder.api.scene.SceneBuilder; -import net.createmod.ponder.api.scene.SceneBuildingUtil; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.world.phys.Vec3; -import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CNItems; -import net.nuclearteam.createnuclear.content.multiblock.controller.ReactorControllerBlock; - -import java.util.HashMap; -import java.util.Map; - -public class CNPonderReactorScenes { - - // multiblock sizes and heights for tiers - private static final int S_T1 = 5; - private static final int H_T1 = 7; - private static final int S_T2 = 7; - private static final int H_T2 = 9; - private static final int S_T3 = 9; - private static final int H_T3 = 11; - - private static final int PEDESTAL_Y = 0; // pedestal layer (snow/concrete) - private static final int MULTIBLOCK_BASE_Y = 1; // multiblock starts at y=1 - private static final int MARGIN = 2; // Create margin - private static int plateSizeFor(int multiblockSize) { return multiblockSize + MARGIN * 2; } - - /** - * Simple container for storing all positions of interest for a multiblock. * The BlockPos values here must be in SCENE COORDINATES (0..plate-1 for X/Z, 1..H for Y). - */ - private record Positions(BlockPos controller, BlockPos input1, BlockPos input2, BlockPos liquidInput, - BlockPos alarm, BlockPos output) { - - /** - * All blocks that carry an explanatory callout, so a section-based reveal can show them per layer. - */ - BlockPos[] specials() { - return new BlockPos[]{controller, input1, input2, liquidInput, alarm, output}; - } - } - - /** Describes a single callout: its text and the direction to point at. */ - private record CalloutInfo(String text, Direction pointDirection, int fullDuration, int reducedDuration, int fullIdle, int reducedIdle) {} - - /** - * Static map of positions per multiblock size. - * Key = multiblockSize (5 for S_T1, 7 for S_T2, 9 for S_T3). - * Rule: x/z in 0..plate-1, y in 1..H; these values must match the structure's actual NBT layout. - */ - private static final Map STATIC_POS = new HashMap<>(); - static { - // Example for T1 (multiblockSize = 5) - // plate = 5 + 4 = 9 => valid x/z: 0..8; inner multiblock: 2..6 - STATIC_POS.put(5, new Positions( - new BlockPos(4, 4, 6), // controller - new BlockPos(3, 2, 6), // input1 - new BlockPos(3, 3, 6), // input2 - new BlockPos(3, 4, 6), // liquidInput - new BlockPos(5, 4, 6), // alarm - new BlockPos(5, 2, 6) // output - )); - - // Example for T2 (multiblockSize = 7) - STATIC_POS.put(7, new Positions( - new BlockPos(5, 5, 8), // controller - new BlockPos(3, 3, 8), // input1 - new BlockPos(3, 4, 8), // input2 - new BlockPos(3, 5, 8), // liquidInput - new BlockPos(7, 5, 8), // alarm - new BlockPos(7, 3, 8) // output - )); - - // Example for T3 (multiblockSize = 9) - STATIC_POS.put(9, new Positions( - new BlockPos(6, 6, 10), // controller - new BlockPos(5, 4, 10), // input1 - new BlockPos(5, 5, 10), // input2 - new BlockPos(5, 6, 10), // liquidInput - new BlockPos(7, 6, 10), // alarm - new BlockPos(7, 4, 10) // output - )); - } - - /** - * Precomputes a BlockPos -> CalloutInfo map for O(1) lookup per cell instead of - * iterating pos.specials() and comparing coordinates for every (x, y, z) visited. - */ - private static Map buildCallouts(Positions pos) { - Map callouts = new HashMap<>(); - callouts.put(pos.controller, new CalloutInfo( - "Controller: brain of the reactor, and the place where the blueprint goes to start it", - Direction.DOWN, - 130, 110, - 140, 120 - )); - - // Extend here if input1/input2/liquidInput/alarm/output ever need a callout - // during structure reveal (they currently don't have one — see ioPlacement() - // for their dedicated explanations). - return callouts; - } - - /** * Returns the static positions for the given size. * If no static entry exists, returns "reasonable" computed positions instead. */ - private static Positions positionsFor(int multiblockSize, int height) { - Positions p = STATIC_POS.get(multiblockSize); - if (p != null) return p; - - // fallback: simple centered calculation (avoids an NPE) - int plate = plateSizeFor(multiblockSize); - int offset = MARGIN; - int cx = offset + (multiblockSize / 2); - int cz = offset + (multiblockSize / 2); - int cy = MULTIBLOCK_BASE_Y + (height / 2); - return new Positions( - new BlockPos(cx, cy, cz), // controller - new BlockPos(cx, MULTIBLOCK_BASE_Y+1, offset + multiblockSize - 1), // input1 front - new BlockPos(cx, Math.min(MULTIBLOCK_BASE_Y+height-1, MULTIBLOCK_BASE_Y+2), offset + multiblockSize - 1), // input2 - new BlockPos(cx, cy, offset), // liquidInput back - new BlockPos(Math.max(offset, cx-1), cy, cz), // alarm - new BlockPos(offset + multiblockSize - 1, cy, cz) // output right - ); - } - - private static void showReactorStructure(SceneBuilder scene, SceneBuildingUtil util, int S, int H, int plate) { - showReactorStructure(scene, util, S, H, plate, false); - } - - /** - * @param bySections when true, each floor is revealed as a single render section instead of - * block-by-block. Block-by-block creates one {@code WorldSectionElement} per cell - * ({@code H * plate^2}, e.g. 1859 for T3) and they all keep rendering every frame, which - * is what makes the larger tiers lag past ~2/3 of the scene. T1/T2 stay block-by-block. - */ - private static void showReactorStructure(SceneBuilder scene, SceneBuildingUtil util, int S, int H, int plate, boolean bySections) { - Positions pos = positionsFor(S, H); - Map callouts = buildCallouts(pos); - - int minX = MARGIN; - int maxX = MARGIN + S - 1; - int minZ = MARGIN; - int maxZ = MARGIN + S - 1; - int minY = 1; - int maxY = H; - - scene.idle(20); - - for (int y = 1; y <= H; y++) { - scene.overlay().showText(bySections ? 25 : 8) - .text("Floor " + y) - .attachKeyFrame() - .placeNearTarget(); - - if (bySections) { - // One section for the whole floor: same visual build-up, a fraction of the draws. - scene.world().showSection(util.select().layer(y), Direction.NORTH); - // Block-by-block got its per-floor pacing from plate^2 * idle(4). With a single - // section per floor we must idle explicitly, otherwise callout-free floors flash - // by instantly and their "Floor N" labels overlap each other. - scene.idle(50); - for (Map.Entry entry : callouts.entrySet()) { - if (entry.getKey().getY() == y) { - showCallout(scene, util, entry.getKey(), entry.getValue(), bySections); - } - } - } else { - for (int x = 0; x < plate; x++) { - for (int z = 0; z < plate; z++) { - BlockPos cell = new BlockPos(x, y, z); - scene.world().showSection(util.select().position(x, y, z), Direction.NORTH); - scene.idle(4); - CalloutInfo info = callouts.get(cell); - if (info != null) { - showCallout(scene, util, cell, info, bySections); - } - } - } - } - } - - scene.idle(20); - scene.overlay() - .showText(110) - .text("To start the reactor you will need liquid and rods corresponding to the pattern, then right click the controller with the blueprint in hand"); - Vec3 topSide = util.vector().blockSurface(pos.controller, Direction.EAST); - scene.overlay() - .showControls(topSide, Pointing.UP, 60) - .withItem(CNItems.REACTOR_BLUEPRINT.asStack()) - .rightClick(); - scene.world().modifyBlock(pos.controller, s -> s.setValue(ReactorControllerBlock.ASSEMBLED, true), true); - - scene.idle(120); - scene.overlay() - .showText(120) - .text("Note: Check page 4 for I/O and Alarm blocks (placement & function).") - .attachKeyFrame() - .placeNearTarget(); - scene.idle(130); - } - - private static void showCallout(SceneBuilder scene, SceneBuildingUtil util, BlockPos at, CalloutInfo info, boolean reduced) { - scene.overlay().showText(reduced ? info.reducedDuration() : info.fullDuration()) - .text(info.text()) - .pointAt(util.vector().blockSurface(at, info.pointDirection())) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(reduced ? info.reducedIdle() : info.fullIdle()); - } - - public static void t1(SceneBuilder scene, SceneBuildingUtil util) { - int S = S_T1; - int plate = plateSizeFor(S); - scene.title("reactor_t1","Reactor T1"); - scene.configureBasePlate(0, 0, plate); - scene.world().showSection(util.select().layer(0), Direction.UP); - scene.showBasePlate(); - scene.rotateCameraY(180); - scene.scaleSceneView(0.55f); - showReactorStructure(scene, util, S, H_T1, plate, true); - } - - public static void t2(SceneBuilder scene, SceneBuildingUtil util) { - int S = S_T2; - int plate = plateSizeFor(S); - scene.title("reactor_t2","Reactor T2"); - scene.configureBasePlate(0, 0, plate); - scene.world().showSection(util.select().layer(0), Direction.UP); - scene.showBasePlate(); - scene.rotateCameraY(180); - scene.scaleSceneView(0.45f); - showReactorStructure(scene, util, S, H_T2, plate, true); - } - - public static void t3(SceneBuilder scene, SceneBuildingUtil util) { - int S = S_T3; - int plate = plateSizeFor(S); - scene.title("reactor_t3","Reactor T3"); - scene.configureBasePlate(0, 0, plate); - scene.world().showSection(util.select().layer(0), Direction.UP); - scene.showBasePlate(); - scene.rotateCameraY(180); - scene.scaleSceneView(0.35f); - // T3 reveals floor-by-floor (section-based) so the largest tier doesn't lag; T1/T2 stay block-by-block. - showReactorStructure(scene, util, S, H_T3, plate, true); - } - - public static void ioPlacement(SceneBuilder scene, SceneBuildingUtil util) { - int S = S_T1; - int plate = plateSizeFor(S); - Positions pos = positionsFor(S, H_T1); - - scene.title("reactor_io_placement", "Reactor I/O: Function & Placement"); - scene.configureBasePlate(0, 0, plate); - scene.world().showSection(util.select().layer(0), Direction.UP); - scene.showBasePlate(); - scene.rotateCameraY(180); - scene.scaleSceneView(0.55f); - - // Populate the correct I/O blocks at the beginning because the schematic has old broken IDs - scene.world().modifyBlock(pos.input1, s -> CNBlocks.REACTOR_ROD_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.SOUTH), false); - scene.world().modifyBlock(pos.input2, s -> CNBlocks.REACTOR_ROD_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.SOUTH), false); - scene.world().modifyBlock(pos.liquidInput, s -> CNBlocks.REACTOR_FLUID_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.SOUTH), false); - scene.world().modifyBlock(pos.alarm, s -> CNBlocks.REACTOR_ALARM.get().defaultBlockState(), false); - scene.world().modifyBlock(pos.output, s -> CNBlocks.REACTOR_OUTPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.SOUTH), false); - - // Show the entire T1 structure instantly - scene.world().showSection(util.select().layersFrom(1), Direction.UP); - scene.idle(20); - - // Show Input 1 - scene.overlay().showText(150) - .text("Rod Input: Stores Heating or Cooling Rods. We need one Heating Rod (fuel) to heat the reactor, and one Cooling Rod for stability.") - .pointAt(util.vector().blockSurface(pos.input1, Direction.SOUTH)) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(160); - - // Show Input 2 - scene.overlay().showText(150) - .text("Second Rod Input: This is why we need at least two inputs! One for the Heating Rod and one for the Cooling Rod to prevent explosions.") - .pointAt(util.vector().blockSurface(pos.input2, Direction.SOUTH)) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(160); - - // Show Fluid Input - scene.overlay().showText(150) - .text("Fluid Input: Fluid is also required to cool the reactor and ensure it does not explode.") - .pointAt(util.vector().blockSurface(pos.liquidInput, Direction.SOUTH)) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(160); - - // Show Alarm - scene.overlay().showText(150) - .text("Alarm (Optional): Emits a sound when the reactor becomes unstable and risks exploding.") - .pointAt(util.vector().blockSurface(pos.alarm, Direction.SOUTH)) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(160); - - // Show Output - scene.overlay().showText(160) - .text("Output: Necessary to extract generated energy. You can place multiple outputs to dispatch the total energy between them.") - .pointAt(util.vector().blockSurface(pos.output, Direction.SOUTH)) - .attachKeyFrame() - .placeNearTarget(); - scene.idle(170); - - // --- Placement --- - scene.overlay().showText(120) - .text("These blocks can replace ANY Reactor Casing, as long as it is not on an edge.") - .attachKeyFrame() - .placeNearTarget(); - scene.idle(130); - - // Demonstrate moving the blocks to the roof (y=7 for T1) - BlockPos newIn1 = new BlockPos(3, 7, 3); - BlockPos newIn2 = new BlockPos(3, 7, 4); - BlockPos newLiq = new BlockPos(3, 7, 5); - BlockPos newAlm = new BlockPos(5, 7, 3); - BlockPos newOut = new BlockPos(5, 7, 5); - - // Replace old pos with casing - scene.world().modifyBlock(pos.input1, s -> CNBlocks.REACTOR_CASING.get().defaultBlockState(), true); - scene.world().modifyBlock(pos.input2, s -> CNBlocks.REACTOR_CASING.get().defaultBlockState(), true); - scene.world().modifyBlock(pos.liquidInput, s -> CNBlocks.REACTOR_CASING.get().defaultBlockState(), true); - scene.world().modifyBlock(pos.alarm, s -> CNBlocks.REACTOR_CASING.get().defaultBlockState(), true); - scene.world().modifyBlock(pos.output, s -> CNBlocks.REACTOR_CASING.get().defaultBlockState(), true); - - // Place I/O on roof - scene.world().modifyBlock(newIn1, s -> CNBlocks.REACTOR_ROD_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.UP), true); - scene.world().modifyBlock(newIn2, s -> CNBlocks.REACTOR_ROD_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.UP), true); - scene.world().modifyBlock(newLiq, s -> CNBlocks.REACTOR_FLUID_INPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.UP), true); - // Note: ReactorAlarm might not have FACING. Using default state. - scene.world().modifyBlock(newAlm, s -> CNBlocks.REACTOR_ALARM.get().defaultBlockState(), true); - scene.world().modifyBlock(newOut, s -> CNBlocks.REACTOR_OUTPUT.get().defaultBlockState().setValue(BlockStateProperties.FACING, Direction.UP), true); - - scene.overlay().showText(100) - .text("They can be grouped together on the roof or any other flat surface.") - .pointAt(util.vector().blockSurface(newIn2, Direction.UP)) - .placeNearTarget(); - scene.idle(110); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNBiomeModifiers.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNBiomeModifiers.java index 601662567..92047c935 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNBiomeModifiers.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNBiomeModifiers.java @@ -1,5 +1,6 @@ package net.nuclearteam.createnuclear.infrastructure.worldgen; +import com.simibubi.create.infrastructure.worldgen.AllPlacedFeatures; import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; import net.minecraft.core.HolderSet; @@ -19,8 +20,6 @@ public class CNBiomeModifiers { public static final ResourceKey URANIUM_ORE = key("uranium_ore"), LEAD_ORE = key("lead_ore"), - THORIUM_ORE = key("thorium_ore"), - NITRATE_ORE = key("nitrate_ore"), STRIATED_ORES_OVERWORLD = key("striated_ores_overworld") ; @@ -35,14 +34,10 @@ public static void bootstrap(BootstapContext ctx) { HolderGetter featureLookup = ctx.lookup(Registries.PLACED_FEATURE); Holder uraniumOre = featureLookup.getOrThrow(CNPlacedFeatures.URANIUM_ORE); Holder leadOre = featureLookup.getOrThrow(CNPlacedFeatures.LEAD_ORE); - Holder thoriumOre = featureLookup.getOrThrow(CNPlacedFeatures.THORIUM_ORE); - Holder nitrateOre = featureLookup.getOrThrow(CNPlacedFeatures.NITRATE_ORE); Holder striatedOresOverworld = featureLookup.getOrThrow(CNPlacedFeatures.STRIATED_ORES_OVERWORLD); ctx.register(URANIUM_ORE, addOre(isOverworld, uraniumOre)); ctx.register(LEAD_ORE, addOre(isOverworld, leadOre)); - ctx.register(THORIUM_ORE, addOre(isOverworld, thoriumOre)); - ctx.register(NITRATE_ORE, addOre(isOverworld, nitrateOre)); ctx.register(STRIATED_ORES_OVERWORLD, addOre(isOverworld, striatedOresOverworld)); } diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNConfiguredFeatures.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNConfiguredFeatures.java index cdee138f3..53c63b45c 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNConfiguredFeatures.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNConfiguredFeatures.java @@ -23,8 +23,6 @@ public class CNConfiguredFeatures { public static final ResourceKey> URANIUM_ORE = key("uranium_ore"), LEAD_ORE = key("lead_ore"), - THORIUM_ORE = key("thorium_ore"), - NITRATE_ORE = key("nitrate_ore"), STRIATED_ORES_OVERWORLD = key("striated_ores_overworld") ; @@ -34,31 +32,21 @@ public class CNConfiguredFeatures { public static void bootstrap(BootstapContext> ctx) { RuleTest stoneOreReplaceable = new TagMatchTest(BlockTags.STONE_ORE_REPLACEABLES); - RuleTest deepslateOreReplaceable = new TagMatchTest(BlockTags.DEEPSLATE_ORE_REPLACEABLES); + RuleTest deepslateOreReplaceables = new TagMatchTest(BlockTags.DEEPSLATE_ORE_REPLACEABLES); List uraniumTargetStates = List.of( OreConfiguration.target(stoneOreReplaceable, CNBlocks.URANIUM_ORE.getDefaultState()), - OreConfiguration.target(deepslateOreReplaceable, CNBlocks.DEEPSLATE_URANIUM_ORE.getDefaultState()) + OreConfiguration.target(deepslateOreReplaceables, CNBlocks.DEEPSLATE_URANIUM_ORE.getDefaultState()) ); + register(ctx, URANIUM_ORE, Feature.ORE, new OreConfiguration(uraniumTargetStates, 7)); List leadTargetStates = List.of( OreConfiguration.target(stoneOreReplaceable, CNBlocks.LEAD_ORE.getDefaultState()), - OreConfiguration.target(deepslateOreReplaceable, CNBlocks.DEEPSLATE_LEAD_ORE.getDefaultState()) - ); - register(ctx, LEAD_ORE, Feature.ORE, new OreConfiguration(leadTargetStates, 12)); - - List thoriumTargetStates = List.of( - OreConfiguration.target(stoneOreReplaceable, CNBlocks.THORIUM_ORE.getDefaultState()), - OreConfiguration.target(deepslateOreReplaceable, CNBlocks.DEEPSLATE_THORIUM_ORE.getDefaultState()) + OreConfiguration.target(deepslateOreReplaceables, CNBlocks.DEEPSLATE_LEAD_ORE.getDefaultState()) ); - register(ctx, THORIUM_ORE, Feature.ORE, new OreConfiguration(thoriumTargetStates, 12)); - List nitrateTargetStates = List.of( - OreConfiguration.target(stoneOreReplaceable, CNBlocks.NITRATE_ORE.getDefaultState()), - OreConfiguration.target(deepslateOreReplaceable, CNBlocks.DEEPSLATE_NITRATE_ORE.getDefaultState()) - ); - register(ctx, NITRATE_ORE, Feature.ORE, new OreConfiguration(nitrateTargetStates, 10)); + register(ctx, LEAD_ORE, Feature.ORE, new OreConfiguration(leadTargetStates, 7)); List overworldLayerPatterns = List.of( CNLayerPatterns.AUTUNITE.get() diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacedFeatures.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacedFeatures.java index 3a0e2221c..2735718cb 100644 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacedFeatures.java +++ b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacedFeatures.java @@ -1,5 +1,6 @@ package net.nuclearteam.createnuclear.infrastructure.worldgen; +import com.simibubi.create.infrastructure.worldgen.ConfigPlacementFilter; import net.minecraft.core.Holder; import net.minecraft.core.HolderGetter; import net.minecraft.core.registries.Registries; @@ -18,8 +19,6 @@ public class CNPlacedFeatures { public static final ResourceKey URANIUM_ORE = key("uranium_ore"), LEAD_ORE = key("lead_ore"), - THORIUM_ORE = key("thorium_ore"), - NITRATE_ORE = key("nitrate_ore"), STRIATED_ORES_OVERWORLD = key("striated_ores_overworld") ; @@ -31,15 +30,11 @@ public static void bootstrap(BootstapContext ctx) { HolderGetter> featureLookup = ctx.lookup(Registries.CONFIGURED_FEATURE); Holder> uraniumOre = featureLookup.getOrThrow(CNConfiguredFeatures.URANIUM_ORE); Holder> leadOre = featureLookup.getOrThrow(CNConfiguredFeatures.LEAD_ORE); - Holder> thoriumOre = featureLookup.getOrThrow(CNConfiguredFeatures.THORIUM_ORE); - Holder> nitrateOre = featureLookup.getOrThrow(CNConfiguredFeatures.NITRATE_ORE); Holder> striatedOresOverworld = featureLookup.getOrThrow(CNConfiguredFeatures.STRIATED_ORES_OVERWORLD); - register(ctx, URANIUM_ORE, uraniumOre, placementOres(CountPlacement.of(4), -63, 16)); - register(ctx, LEAD_ORE, leadOre, placementOres(CountPlacement.of(10), -16, 60)); - register(ctx, THORIUM_ORE, thoriumOre, placementOres(CountPlacement.of(6), -16, 55)); - register(ctx, NITRATE_ORE, nitrateOre, placementOres(CountPlacement.of(6), -63, 64)); - register(ctx, STRIATED_ORES_OVERWORLD, striatedOresOverworld, placement(RarityFilter.onAverageOnceEvery(64), -63, 16)); + register(ctx, URANIUM_ORE, uraniumOre, placementOres(CountPlacement.of(6), -64, 64)); + register(ctx, LEAD_ORE, leadOre, placementOres(CountPlacement.of(6), -64, 64)); + register(ctx, STRIATED_ORES_OVERWORLD, striatedOresOverworld, placement(RarityFilter.onAverageOnceEvery(18), -30, 70)); } diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacementModifiers.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacementModifiers.java deleted file mode 100644 index 9214a4ea6..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/CNPlacementModifiers.java +++ /dev/null @@ -1,19 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen; - - -import net.minecraft.core.registries.Registries; -import net.minecraft.world.level.levelgen.placement.PlacementModifierType; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.RegistryObject; -import net.nuclearteam.createnuclear.CreateNuclear; - -public class CNPlacementModifiers { - private static final DeferredRegister> REGISTER = DeferredRegister.create(Registries.PLACEMENT_MODIFIER_TYPE, CreateNuclear.MOD_ID); - - public static final RegistryObject> CONFIG_FILTER = REGISTER.register("config_filter", () -> () -> ConfigPlacementFilter.CODEC); - - public static void register(IEventBus modEventBus) { - REGISTER.register(modEventBus); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/ConfigPlacementFilter.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/ConfigPlacementFilter.java deleted file mode 100644 index 09b495182..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/ConfigPlacementFilter.java +++ /dev/null @@ -1,24 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen; - -import com.mojang.serialization.Codec; -import net.minecraft.core.BlockPos; -import net.minecraft.util.RandomSource; -import net.minecraft.world.level.levelgen.placement.PlacementContext; -import net.minecraft.world.level.levelgen.placement.PlacementFilter; -import net.minecraft.world.level.levelgen.placement.PlacementModifierType; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -public class ConfigPlacementFilter extends PlacementFilter { - public static final ConfigPlacementFilter INSTANCE = new ConfigPlacementFilter(); - public static final Codec CODEC = Codec.unit(() -> INSTANCE); - - @Override - protected boolean shouldPlace(PlacementContext pContext, RandomSource pRandom, BlockPos pPos) { - return CNConfigs.common().worldGen.enable.get(); - } - - @Override - public PlacementModifierType type() { - return CNPlacementModifiers.CONFIG_FILTER.get(); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMapping.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMapping.java deleted file mode 100644 index 707f9a555..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMapping.java +++ /dev/null @@ -1,8 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.resources.ResourceKey; -import net.minecraft.tags.TagKey; -import net.minecraft.world.level.biome.Biome; - -public record BiomeIrradiationMapping(TagKey sourceTag, ResourceKey target) { -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMappings.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMappings.java deleted file mode 100644 index 8a3a04963..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationMappings.java +++ /dev/null @@ -1,28 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.Holder; -import net.minecraft.resources.ResourceKey; -import net.minecraft.tags.BiomeTags; -import net.minecraft.world.level.biome.Biome; - -import java.util.List; - -public class BiomeIrradiationMappings { - private static final List MAPPINGS = List.of( - new BiomeIrradiationMapping(BiomeTags.IS_OVERWORLD, CNBiomes.Irradiated.PLAIN), - new BiomeIrradiationMapping(BiomeTags.IS_NETHER, CNBiomes.Irradiated.PLAIN), - new BiomeIrradiationMapping(BiomeTags.IS_END, CNBiomes.Irradiated.PLAIN) - ); - - private BiomeIrradiationMappings() {} - - public static ResourceKey resolveTarget(Holder currentBiome, ResourceKey fallback) { - for (BiomeIrradiationMapping mapping : MAPPINGS) { - if (currentBiome.is(mapping.sourceTag())) { - return mapping.target(); - } - } - - return fallback; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationService.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationService.java deleted file mode 100644 index 5c35d09aa..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/BiomeIrradiationService.java +++ /dev/null @@ -1,120 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; -import net.minecraft.core.Registry; -import net.minecraft.core.SectionPos; -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.level.ChunkPos; -import net.minecraft.world.level.biome.Biome; -import net.minecraft.world.level.biome.BiomeResolver; -import net.minecraft.world.level.chunk.ChunkAccess; -import net.minecraft.world.level.chunk.ChunkStatus; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.infrastructure.config.CNConfigs; - -import java.util.ArrayList; -import java.util.List; - -public final class BiomeIrradiationService { - public static void circularArea(ServerLevel serverLevel, BlockPos center, ResourceKey defaultTarget, int radius) { - Registry biomeRegistry = serverLevel.registryAccess().registryOrThrow(Registries.BIOME); - - Holder currentAtCenter = serverLevel.getBiome(center); - ResourceKey targetAtCenter = BiomeIrradiationMappings.resolveTarget(currentAtCenter, defaultTarget); - if (currentAtCenter.is(targetAtCenter)) { - return; - } - - int minX = center.getX() - radius; - int maxX = center.getX() + radius; - int minZ = center.getZ() - radius; - int maxZ = center.getZ() + radius; - - double radiusSq = radius * radius; - BiomeResolver resolver = createCircularResolver(biomeRegistry, center, radiusSq, defaultTarget, serverLevel); - - List chunks = new ArrayList<>(); - for (int cz = SectionPos.blockToSectionCoord(minZ); cz < SectionPos.blockToSectionCoord(maxZ); ++cz) { - for (int cx = SectionPos.blockToSectionCoord(minX); cx < SectionPos.blockToSectionCoord(maxX); ++cx) { - ChunkAccess chunkAccess = serverLevel.getChunk(cx, cz, ChunkStatus.FULL, false); - if (chunkAccess != null) { - chunkAccess.fillBiomesFromNoise(resolver, serverLevel.getChunkSource().randomState().sampler()); - chunkAccess.setUnsaved(true); - chunks.add(chunkAccess); - } - } - } - - PersistentIrradiatedZones.get(serverLevel).addChunks(chunks.stream().map(ChunkAccess::getPos).toList()); - serverLevel.getChunkSource().chunkMap.resendBiomesForChunks(chunks); - } - - public static boolean restoreArea(ServerLevel serverLevel, BlockPos pos) { - ChunkPos centerChunk = new ChunkPos(pos); - PersistentIrradiatedZones zones = PersistentIrradiatedZones.get(serverLevel); - - List restored = new ArrayList<>(); - for (ChunkPos target : resolveRestoreTargets(centerChunk)) { - if (!zones.containsChunk(target)) continue; - - ChunkAccess chunkAccess = serverLevel.getChunk(target.x, target.z, ChunkStatus.FULL, false); - if (chunkAccess == null) continue; - - BiomeResolver resolver = (x, y, z, sample) -> serverLevel.getChunkSource().getGenerator().getBiomeSource().getNoiseBiome(x, y, z, sample); - - chunkAccess.fillBiomesFromNoise(resolver, serverLevel.getChunkSource().randomState().sampler()); - chunkAccess.setUnsaved(true); - restored.add(chunkAccess); - - zones.removeChunk(target); - } - - if (restored.isEmpty()) return false; - - serverLevel.getChunkSource().chunkMap.resendBiomesForChunks(restored); - - return true; - } - - private static List resolveRestoreTargets(ChunkPos center) { - if (!CNConfigs.server().biomeRestore.restoreInCircle.get()) { - return List.of(center); - } - - int radius = CNConfigs.server().biomeRestore.restoreRadiusChunks.get(); - List targets = new ArrayList<>(); - for (int dz = -radius; dz <= radius; dz++) { - for (int dx = -radius; dx <= radius; dx++) { - if (dx * dx + dz * dz <= radius * radius) { - targets.add(new ChunkPos(center.x + dx, center.z + dz)); - } - } - } - - return targets; - } - - private static BiomeResolver createCircularResolver(Registry biomeRegistry, BlockPos center, double radiusSq, ResourceKey defaultTarget, ServerLevel level) { - return (x, y, z, noise) -> { - int blockX = x << 2; - int blockZ = z << 2; - - double distX = blockX - center.getX(); - double distZ = blockZ - center.getZ(); - - Holder current = level.getBiome(new BlockPos(blockX, y << 2, blockZ)); - - if ((distX * distX) + (distZ * distZ) <= radiusSq) { - ResourceKey target = BiomeIrradiationMappings.resolveTarget(current, defaultTarget); - - return biomeRegistry.getHolderOrThrow(target); - } - - return current; - }; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNBiomes.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNBiomes.java deleted file mode 100644 index ead5d6659..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNBiomes.java +++ /dev/null @@ -1,29 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.HolderGetter; -import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.world.level.biome.*; -import net.minecraft.world.level.levelgen.carver.ConfiguredWorldCarver; -import net.minecraft.world.level.levelgen.placement.PlacedFeature; -import net.nuclearteam.createnuclear.CreateNuclear; -import org.jetbrains.annotations.NotNull; - -public class CNBiomes { - public static final class Irradiated { - public static final ResourceKey PLAIN = key("irradiated_land"); - } - - public static void bootstrapRegistries(BootstapContext context) { - HolderGetter featureLookup = context.lookup(Registries.PLACED_FEATURE); - HolderGetter> carverLookup = context.lookup(Registries.CONFIGURED_CARVER); - HolderGetter soundLookup = context.lookup(Registries.SOUND_EVENT); - context.register(Irradiated.PLAIN, IrradiatedBiomes.createPlain(featureLookup, carverLookup, soundLookup)); - } - - public static @NotNull ResourceKey key(String id) { - return ResourceKey.create(Registries.BIOME, CreateNuclear.asResource(id)); - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNDensityFunctions.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNDensityFunctions.java deleted file mode 100644 index f5a6fe1c6..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNDensityFunctions.java +++ /dev/null @@ -1,41 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.HolderGetter; -import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.level.levelgen.DensityFunction; -import net.minecraft.world.level.levelgen.DensityFunctions; -import net.minecraft.world.level.levelgen.synth.BlendedNoise; -import net.nuclearteam.createnuclear.CreateNuclear; - -public class CNDensityFunctions { - public static final class Irradiated { - public static final ResourceKey EROSION = createKey("irradiated/erosion"); - public static final ResourceKey FINAL_DENSITY = createKey("irradiated/final_density"); - } - - private static ResourceKey createKey(String id) { - return ResourceKey.create(Registries.DENSITY_FUNCTION, CreateNuclear.asResource(id)); - } - - public static void bootstrapRegistries(BootstapContext context) { - context.register(Irradiated.EROSION, DensityFunctions.add( - DensityFunctions.yClampedGradient(0, 90, 1, -1), - BlendedNoise.createUnseeded(0.25, 0.375, 80.0, 160.0, 8.0) - )); - - context.register(Irradiated.FINAL_DENSITY, DensityFunctions.add( - DensityFunctions.yClampedGradient(0, 90, 1, -1), - BlendedNoise.createUnseeded(0.25, 0.375, 80.0, 160.0, 8.0) - )); - } - - private static DensityFunction registerAndWrap(BootstapContext context, ResourceKey key, DensityFunction densityFunction) { - return new DensityFunctions.HolderHolder(context.register(key, densityFunction)); - } - - public static DensityFunction getFunction(HolderGetter densityFunctions, ResourceKey key) { - return new DensityFunctions.HolderHolder(densityFunctions.getOrThrow(key)); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseData.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseData.java deleted file mode 100644 index 775908820..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseData.java +++ /dev/null @@ -1,29 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.level.levelgen.synth.NormalNoise.NoiseParameters; -import net.nuclearteam.createnuclear.CreateNuclear; - -public class CNNoiseData { - public static final ResourceKey EROSION = createKey("irradiated/erosion"); - - private static ResourceKey createKey(String id) { - return ResourceKey.create(Registries.NOISE, CreateNuclear.asResource(id)); - } - - public static void bootstrapRegistries(BootstapContext context) { - register(context, EROSION, -9, 1.0, 1.0, 0.0, 1.0, 1.0); - } - - private static void register( - BootstapContext context, - ResourceKey key, - int firstOctave, - double amplitude, - double... otherAmplitudes - ) { - context.register(key, new NoiseParameters(firstOctave, amplitude, otherAmplitudes)); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseGeneratorSettings.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseGeneratorSettings.java deleted file mode 100644 index 2c8c02c89..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/CNNoiseGeneratorSettings.java +++ /dev/null @@ -1,99 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.HolderGetter; -import net.minecraft.core.registries.Registries; -import net.minecraft.data.worldgen.BootstapContext; -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.level.biome.OverworldBiomeBuilder; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.levelgen.*; -import net.minecraft.world.level.levelgen.synth.NormalNoise; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.surfacerule.IrradiatedSurfaceRules; -import org.jetbrains.annotations.NotNull; - -public class CNNoiseGeneratorSettings { - public static final ResourceKey IRRADIATED = key("irradiated_noise"); - - public static void bootstrapRegistries(BootstapContext context) { - HolderGetter densityLookup = context.lookup(Registries.DENSITY_FUNCTION); - HolderGetter noiseLookup = context.lookup(Registries.NOISE); - - context.register(IRRADIATED, new NoiseGeneratorSettings( - NoiseSettings.create(-32, 256, 1, 2), - CNBlocks.STEEL_BLOCK.get().defaultBlockState(), - Blocks.AIR.defaultBlockState(), - CNNoiseGeneratorSettings.irradiated(densityLookup, noiseLookup), - IrradiatedSurfaceRules.DEFAULT_RULE, - new OverworldBiomeBuilder().spawnTarget(), - 32, - false, - false, - false, - false - )); - } - - public static NoiseRouter irradiated(HolderGetter densityLookup, HolderGetter noiseLookup) { - DensityFunction shiftX = CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.SHIFT_X); - DensityFunction shiftZ = CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.SHIFT_Z); - DensityFunction y = CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.Y); - return new NoiseRouter( - DensityFunctions.constant(1), // barrierNoise - DensityFunctions.zero(), // fluidLevelFloodednessNoise - DensityFunctions.zero(), // fluidLevelSpreadNoise - DensityFunctions.zero(), // lavaNoise - DensityFunctions.shiftedNoise2d( - shiftX, shiftZ, 0.25, noiseLookup.getOrThrow(Noises.TEMPERATURE) - ), // temperature - DensityFunctions.shiftedNoise2d( - shiftX, shiftZ, 0, noiseLookup.getOrThrow(Noises.VEGETATION) - ), // vegetation - CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.CONTINENTS), // continents - CNDensityFunctions.getFunction(densityLookup, CNDensityFunctions.Irradiated.EROSION), // erosion - CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.DEPTH), // depth - CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.RIDGES), // ridges - DensityFunctions.add( - DensityFunctions.constant(0.1171875), - DensityFunctions.mul( - DensityFunctions.yClampedGradient( - -30, -40, 0, 1 - ), - DensityFunctions.add( - DensityFunctions.constant(-0.1171875), - DensityFunctions.add( - DensityFunctions.constant(-0.078125), - DensityFunctions.mul( - DensityFunctions.yClampedGradient( - 240, 256, 1, 0 - ), - DensityFunctions.add( - DensityFunctions.constant(0.078125), - DensityFunctions.add( - DensityFunctions.constant(-0.703125), - DensityFunctions.mul( - DensityFunctions.constant(4), - DensityFunctions.mul( - CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.DEPTH), - DensityFunctions.cache2d(CNDensityFunctions.getFunction(densityLookup, NoiseRouterData.FACTOR)) - ).quarterNegative() - ) - ).clamp(-30, 64) - ) - ) - ) - ) - ) - ), // initialDensityWithoutJaggedness - DensityFunctions.blendDensity(CNDensityFunctions.getFunction(densityLookup, CNDensityFunctions.Irradiated.FINAL_DENSITY)), // finalDensity - DensityFunctions.zero(), // veinToggle - DensityFunctions.zero(), // veinRidged - DensityFunctions.zero() // veinGap - ); - } - - private static @NotNull ResourceKey key(String id) { - return ResourceKey.create(Registries.NOISE_SETTINGS, CreateNuclear.asResource(id)); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/IrradiatedBiomes.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/IrradiatedBiomes.java deleted file mode 100644 index 69cbc7c92..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/IrradiatedBiomes.java +++ /dev/null @@ -1,57 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.HolderGetter; -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.world.level.biome.*; -import net.minecraft.world.level.levelgen.carver.ConfiguredWorldCarver; -import net.minecraft.world.level.levelgen.placement.PlacedFeature; -import net.nuclearteam.createnuclear.CNSoundEvents; -import net.nuclearteam.createnuclear.content.particles.IrradiatedParticlesData; - -public class IrradiatedBiomes { - public static Biome createPlain(HolderGetter featureLookup, HolderGetter> carverLookup, HolderGetter soundLookup) { - return IrradiatedBiomes.irradiated(featureLookup, carverLookup, soundLookup, new BiomeGenerationSettings.Builder(featureLookup, carverLookup)); - } - - public static Biome irradiated(HolderGetter featureGetter, HolderGetter> carverGetter, HolderGetter soundLookup, BiomeGenerationSettings.Builder generation) { - MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); - BiomeSpecialEffects.Builder effectBuilder = new BiomeSpecialEffects.Builder(); - - effectBuilder - // Water: murky green - .waterColor(0x3B5133) - .waterFogColor(0x0A0E0A) - - // Fog: sickly radioactive green (kept bright so it stays visible) - .fogColor(0x485E3E) - - // Sky: washed-out grey-green (still lets the sun/moon and day-night cycle show through) - .skyColor(0x324132) - - // Grass: sulfur yellow / scorched - .grassColorOverride(0x8C8F5B) - - // Foliage: withered olive - .foliageColorOverride(0x565E3E) - - .ambientParticle(new AmbientParticleSettings(new IrradiatedParticlesData(), 0.025F)) - .ambientMoodSound(AmbientMoodSettings.LEGACY_CAVE_SETTINGS) - // Plays continuously for as long as the player stands in the biome, under the - // Ambient/Environment volume slider. Deliberately NOT also set as .backgroundMusic(): - // that would start a second, unsynchronised copy of the same file in the MUSIC - // category, and the two would phase against each other. - .ambientLoopSound(soundLookup.getOrThrow(ResourceKey.create(Registries.SOUND_EVENT, CNSoundEvents.BIOME_WASTELAND.getId()))) - ; - - return new Biome.BiomeBuilder() - .mobSpawnSettings(spawnBuilder.build()) - .hasPrecipitation(false) - .temperature(2.0f) - .downfall(0f) - .specialEffects(effectBuilder.build()) - .generationSettings(generation.build()) - .build(); - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/PersistentIrradiatedZones.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/PersistentIrradiatedZones.java deleted file mode 100644 index 572ef1077..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/PersistentIrradiatedZones.java +++ /dev/null @@ -1,72 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome; - -import net.minecraft.core.BlockPos; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.world.level.ChunkPos; -import net.minecraft.world.level.saveddata.SavedData; -import net.nuclearteam.createnuclear.CreateNuclear; - -import java.util.HashSet; -import java.util.Set; - -public class PersistentIrradiatedZones extends SavedData { - private static final String DATA = String.join("_", CreateNuclear.MOD_ID, "irradiated", "zones"); - - private final Set chunks = new HashSet<>(); - - public static PersistentIrradiatedZones get(ServerLevel level) { - return level.getDataStorage().computeIfAbsent(nbt -> { - PersistentIrradiatedZones d = new PersistentIrradiatedZones(); - d.readFrom(nbt); - - return d; - }, PersistentIrradiatedZones::new, DATA); - } - - public void addChunks(Iterable newChunks) { - boolean changed = false; - for (ChunkPos pos : newChunks) { - changed |= chunks.add(pos); - } - - if (changed) setDirty(); - } - - public boolean isInsideAnyZone(BlockPos pos) { - return chunks.contains(new ChunkPos(pos)); - } - - public boolean containsChunk(ChunkPos pos) { - return chunks.contains(pos); - } - - public void removeChunk(ChunkPos pos) { - if (chunks.remove(pos)) setDirty(); - } - - public void readFrom(CompoundTag nbt) { - chunks.clear(); - ListTag list = nbt.getList("chunks", Tag.TAG_COMPOUND); - list.forEach(tag -> { - CompoundTag e = (CompoundTag) tag; - - chunks.add(new ChunkPos(e.getInt("x"), e.getInt("z"))); - }); - } - - @Override - public CompoundTag save(CompoundTag nbt) { - ListTag list = new ListTag(); - chunks.forEach(pos -> { - CompoundTag e = new CompoundTag(); - e.putInt("x", pos.x); - e.putInt("z", pos.z); - list.add(e); - }); - nbt.put("chunks", list); - return nbt; - } -} diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/BiomeTagRule.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/BiomeTagRule.java deleted file mode 100644 index 033b5dabc..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/BiomeTagRule.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome.surfacerule; - -import com.mojang.serialization.MapCodec; -import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.registries.Registries; -import net.minecraft.tags.TagKey; -import net.minecraft.util.KeyDispatchDataCodec; -import net.minecraft.world.level.biome.Biome; -import net.minecraft.world.level.levelgen.SurfaceRules; -import org.jetbrains.annotations.NotNull; - -public record BiomeTagRule(@NotNull TagKey tag) implements SurfaceRules.ConditionSource { - private static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group(TagKey.codec(Registries.BIOME).fieldOf("tag").forGetter(rule -> rule.tag)).apply(instance, BiomeTagRule::new)); - - @Override - public KeyDispatchDataCodec codec() { - return KeyDispatchDataCodec.of(BiomeTagRule.CODEC); - } - - @Override - public SurfaceRules.Condition apply(SurfaceRules.Context context) { - return new Predicate(context); - } - - private class Predicate extends SurfaceRules.LazyYCondition { - protected Predicate(SurfaceRules.Context context) { - super(context); - } - - @Override - protected boolean compute() { - return this.context.biome.get().is(BiomeTagRule.this.tag); - } - } -} \ No newline at end of file diff --git a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/IrradiatedSurfaceRules.java b/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/IrradiatedSurfaceRules.java deleted file mode 100644 index a12cb4852..000000000 --- a/src/main/java/net/nuclearteam/createnuclear/infrastructure/worldgen/biome/surfacerule/IrradiatedSurfaceRules.java +++ /dev/null @@ -1,81 +0,0 @@ -package net.nuclearteam.createnuclear.infrastructure.worldgen.biome.surfacerule; - -import com.mojang.serialization.Codec; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.tags.TagKey; -import net.minecraft.world.level.biome.Biome; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.levelgen.SurfaceRules; -import net.minecraft.world.level.levelgen.SurfaceRules.RuleSource; -import net.minecraft.world.level.levelgen.SurfaceRules.ConditionSource; -import net.minecraft.world.level.levelgen.VerticalAnchor; -import net.nuclearteam.createnuclear.CNBlocks; -import net.nuclearteam.createnuclear.CreateNuclear; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNBiomes; -import net.nuclearteam.createnuclear.infrastructure.worldgen.biome.CNNoiseData; -import org.jetbrains.annotations.NotNull; - -public class IrradiatedSurfaceRules { - private static final ConditionSource IS_IRRADIATED_PLAIN = biome(CNBiomes.Irradiated.PLAIN); - - private static final RuleSource BEDROCK = block(Blocks.BEDROCK); - private static final RuleSource ENRICHED_SOUL_SOIL = block(CNBlocks.ENRICHED_SOUL_SOIL.get()); - private static final RuleSource LEAD_BLOCK = block(CNBlocks.LEAD_BLOCK.get()); - private static final RuleSource LEAD_ORE = block(CNBlocks.LEAD_ORE.get()); - private static final RuleSource RAW_LEAD_BLOCK = block(CNBlocks.RAW_LEAD_BLOCK.get()); - - private static final RuleSource IRRADIATED_PLAIN_MATERIAL = - SurfaceRules.ifTrue(IS_IRRADIATED_PLAIN, RAW_LEAD_BLOCK); - private static final RuleSource SURFACE_GENERATION = SurfaceRules.sequence( - SurfaceRules.ifTrue(SurfaceRules.ON_FLOOR, IRRADIATED_PLAIN_MATERIAL), - SurfaceRules.ifTrue(SurfaceRules.UNDER_FLOOR, IRRADIATED_PLAIN_MATERIAL) - ); - - public static final RuleSource DEFAULT_RULE = createDefaultRule(); - - public static @NotNull RuleSource createDefaultRule() { - return SurfaceRules.sequence( - SurfaceRules.ifTrue( - SurfaceRules.isBiome(CNBiomes.Irradiated.PLAIN), - SurfaceRules.sequence( - SurfaceRules.ifTrue( - SurfaceRules.noiseCondition(CNNoiseData.EROSION, 0.035, 0.0465), - LEAD_ORE - ), - SurfaceRules.ifTrue( - SurfaceRules.noiseCondition(CNNoiseData.EROSION, 0.039, 0.0545), - LEAD_BLOCK - ), - SurfaceRules.ifTrue( - SurfaceRules.noiseCondition(CNNoiseData.EROSION, 0.0545, 0.069), - RAW_LEAD_BLOCK - ) - ) - ), - - SurfaceRules.ifTrue(SurfaceRules.verticalGradient("bedrock_floor", VerticalAnchor.bottom(), VerticalAnchor.aboveBottom(5)), BEDROCK), - SurfaceRules.ifTrue(SurfaceRules.abovePreliminarySurface(), SURFACE_GENERATION), - SurfaceRules.ifTrue(SurfaceRules.verticalGradient("enriched", VerticalAnchor.absolute(-4), VerticalAnchor.absolute(4)), ENRICHED_SOUL_SOIL) - ); - } - - private static @NotNull RuleSource block(@NotNull Block block) { - return SurfaceRules.state(block.defaultBlockState()); - } - - public static SurfaceRules.@NotNull ConditionSource biome(@NotNull TagKey biome) { - return new BiomeTagRule(biome); - } - - @SafeVarargs - public static SurfaceRules.@NotNull ConditionSource biome(@NotNull ResourceKey @NotNull ... keys) { - return SurfaceRules.isBiome(keys); - } - - public static void register() { - Registry.register(BuiltInRegistries.MATERIAL_RULE, CreateNuclear.asResource("irradiated_surface"), Codec.unit(DEFAULT_RULE)); - } -} \ No newline at end of file diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index ab625c076..79226f6fa 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -1,12 +1,3 @@ public net.minecraft.world.item.crafting.RecipeManager f_44007_ # recipes public net.minecraft.world.item.alchemy.PotionBrewing m_43513_(Lnet/minecraft/world/item/alchemy/Potion;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/alchemy/Potion;)V - -public net.minecraft.world.level.levelgen.SurfaceRules$Context -public net.minecraft.world.level.levelgen.SurfaceRules$LazyYCondition -public net.minecraft.world.level.levelgen.SurfaceRules$Condition -public net.minecraft.world.level.levelgen.SurfaceRules$Context f_189555_ # biome -public net.minecraft.world.level.levelgen.NoiseRouterData f_209448_ # SHIFT_X -public net.minecraft.world.level.levelgen.NoiseRouterData f_209447_ # Y -public net.minecraft.world.level.levelgen.NoiseRouterData f_209449_ # SHIFT_Z -public net.minecraft.client.Camera move(DDD)V \ No newline at end of file diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 7db08c4ab..f9f24587b 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -10,7 +10,7 @@ version="${mod_version}" displayName="${mod_name}" authors="${mod_authors}" description='''${mod_description}''' -logoFile = "icon.png" +logoFile = "logo.png" [[dependencies.${mod_id}]] modId="forge" diff --git a/src/main/resources/assets/createnuclear/lang/default/interface.json b/src/main/resources/assets/createnuclear/lang/default/interface.json index 6a27be52a..1fc72eea6 100644 --- a/src/main/resources/assets/createnuclear/lang/default/interface.json +++ b/src/main/resources/assets/createnuclear/lang/default/interface.json @@ -1,16 +1,11 @@ { "itemGroup.createnuclear.main": "Create Nuclear", "itemgroup.uranium": "Uranium Group", - "biome.createnuclear.irradiated_land": "Irradiated Land", "createnuclear.enriched.fan.recipe": "Bulk Enriching", "emi.category.createnuclear.fan_enriched": "Bulk Enriching", "create.recipe.fan_enriched.fan": "Fan behind Enriched Fire", - "createnuclear.snow_powder.fan.recipe": "Cryogenic fan", - "emi.category.createnuclear.snow_powder": "Cryogenic fan", - "create.recipe.fan_snow_powder.fan": "Fan behind Powder Snow", - "gui.createnuclear.reactor_controller.title": "Reactor Controller", "gui.createnuclear.reactor_input.title": "Reactor Input Storage", @@ -22,75 +17,9 @@ "createnuclear.tooltip.heatLevel.danger": "Danger", "createnuclear.generic.unit.heat": "Q", - "createnuclear.tooltip.item.fuel.rod": "Fuel Rod: ", - "createnuclear.tooltip.item.cooled.rod": "Cooler Rod: ", + "createnuclear.tooltip.item.uranium.rod": "Uranium Rod: ", + "createnuclear.tooltip.item.graphene.rod": "Graphite Rod: ", "createnuclear.tooltip.item.unknown.rod": "Unknown: ", - "createnuclear.tooltip.item.empty.rod": "Input Items: ", - "createnuclear.gui.reactor_controller.info_header.title": "Heat value", - - "createnuclear.generic.unit.countCooled.rod": "Count Cooled Rod: %d", - "createnuclear.generic.unit.countFuel.rod": "Count Fuel Rod: %d", - "createnuclear.generic.unit.count.rod": "Counts %s Rod", - "createnuclear.display_source.reactor_count_rod": "Count Rod in Pattern", - "createnuclear.display_source.reactor_controller_count_rod.fuel": "Fuel", - "createnuclear.display_source.reactor_controller_count_rod.cooled": "Cooled", - - "createnuclear.generic.unit.heat.value": "Q", - "createnuclear.generic.unit.heat.rotation": "RPM", - "createnuclear.generic.unit.heat.type": "Heat Level: %s", - "createnuclear.generic.unit.fluid.value": "mB", - "createnuclear.display_source.heat.value": "Q", - "createnuclear.display_source.heat.rotation": "RPM", - "createnuclear.display_source.heat.type": "Heat level", - "createnuclear.display_source.reactor_summary": "Reactor Summary", - "createnuclear.display_source.heat": "Reactor Heat", - "createnuclear.display_source.liquid_level": "Reactor Liquid Level", - "createnuclear.display_source.fuel": "Reactor Fuel", - "createnuclear.display_source.cooler": "Reactor Cooler", - "createnuclear.display_source.size": "Reactor Size", - "createnuclear.display_source.reactor_summary.no_controller": "Reactor not found", - "createnuclear.display_source.reactor_summary.status": "Status:", - "createnuclear.display_source.reactor_summary.active": "ACTIVE", - "createnuclear.display_source.reactor_summary.idle": "IDLE", - "createnuclear.display_source.reactor_summary.temperature": "Temp:", - "createnuclear.display_source.reactor_summary.fuel": "Rods:", - "createnuclear.display_source.reactor_summary.coolant": "Coolant:", - "createnuclear.display_source.reactor.not_enough_space": "Not enough space ", - "createnuclear.display_source.reactor.for_reactor_status": "for reactor status", - "createnuclear.display_source.reactor.no_controller": "No Reactor Controller found", - "createnuclear.display_source.reactor.status": "Status: ", - "createnuclear.display_source.reactor.active": "ACTIVE", - "createnuclear.display_source.reactor.idle": "IDLE", - "createnuclear.display_source.reactor.size": "Tier: ", - "createnuclear.display_source.reactor.fuel": "Fuel: ", - "createnuclear.display_source.reactor.cooler": "Cooler: ", - "createnuclear.display_source.reactor.heat": "Heat: ", - "createnuclear.display_source.reactor.mode.value": "Values", - "createnuclear.display_source.reactor.mode.percent": "Percentages", - "createnuclear.display_source.reactor.mode.gauge": "Gauges", - "createnuclear.display_source.reactor.size.small": "Small", - "createnuclear.display_source.reactor.size.medium": "Medium", - "createnuclear.display_source.reactor.size.large": "Large", - "createnuclear.display_source.reactor.mode.normal": "Normal", - "createnuclear.display_source.reactor.fluid": "Fluid: ", - - "createnuclear.generic.unit.liquid": "WIP", - "createnuclear.display_source.liquid": "Liquid Level", - "createnuclear.tooltip.fluid": "Fluid: %s ", - "createnuclear.tooltip.fluid.none": "Fluid: None ", - "createnuclear.tooltip.fluid.amount": "%d mb", - - "createnuclear.generic.unit.seconds": "s", - "createnuclear.notification.reactor.meltdown_in": "CORE MELTDOWN IN ", - "createnuclear.notification.reactor.overheating": "WARNING: CORE OVERHEATING", - "createnuclear.notification.reactor.critical_failure": "CRITICAL FAILURE", - "createnuclear.notification.reactor.imminent_explosion": "IMMINENT EXPLOSION", - "createnuclear.notification.reactor.stabilized": "CORE STABILIZED", - "createnuclear.notification.reactor.destroyed": "REACTOR DESTROYED", - "createnuclear.notification.reactor.meltdown_finished": "Critical meltdown completed", - "createnuclear.notification.reactor.disassembled": "Reactor has been disassembled", - "createnuclear.notification.reactor.assembled": "Reactor has been assembled", + "createnuclear.gui.reactor_controller.info_header.title": "Heat value" - "death.attack.createnuclear.radiation": "%1$s died from radiation", - "death.attack.createnuclear.fan_radiation": "%1$s died from radiation blast" } diff --git a/src/main/resources/assets/createnuclear/lang/default/irradiated.json b/src/main/resources/assets/createnuclear/lang/default/irradiated.json deleted file mode 100644 index fab98a1a7..000000000 --- a/src/main/resources/assets/createnuclear/lang/default/irradiated.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "irradiated.taming.wip": "This creature cannot be tamed yet - irradiated mobs are still a work in progress" -} diff --git a/src/main/resources/assets/createnuclear/lang/default/potion.json b/src/main/resources/assets/createnuclear/lang/default/potion.json index af7439ee8..913480499 100644 --- a/src/main/resources/assets/createnuclear/lang/default/potion.json +++ b/src/main/resources/assets/createnuclear/lang/default/potion.json @@ -15,17 +15,5 @@ "item.minecraft.tipped_arrow.effect.potion_of_radiation_1": "Arrow of Radiation", "item.minecraft.tipped_arrow.effect.potion_of_radiation_augment_1": "Arrow of Radiation", - "item.minecraft.tipped_arrow.effect.potion_of_radiation_2": "Arrow of Radiation", - - "effect.createnuclear.iodine": "Iodine", - - "item.minecraft.potion.effect.potion_of_iodine": "Potion of Iodine", - "item.minecraft.splash_potion.effect.potion_of_iodine": "Splash Potion of Iodine", - "item.minecraft.lingering_potion.effect.potion_of_iodine": "Lingering Potion of Iodine", - "item.minecraft.tipped_arrow.effect.potion_of_iodine": "Arrow of Iodine", - - "item.minecraft.potion.effect.potion_of_iodine_augment": "Potion of Iodine", - "item.minecraft.splash_potion.effect.potion_of_iodine_augment": "Splash Potion of Iodine", - "item.minecraft.lingering_potion.effect.potion_of_iodine_augment": "Lingering Potion of Iodine", - "item.minecraft.tipped_arrow.effect.potion_of_iodine_augment": "Arrow of Iodine" + "item.minecraft.tipped_arrow.effect.potion_of_radiation_2": "Arrow of Radiation" } \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/lang/default/reactor.json b/src/main/resources/assets/createnuclear/lang/default/reactor.json index 735d9a8ca..67908b9dd 100644 --- a/src/main/resources/assets/createnuclear/lang/default/reactor.json +++ b/src/main/resources/assets/createnuclear/lang/default/reactor.json @@ -1,14 +1,8 @@ { + "reactor.info.assembled.none": "Reactor is not assembled", + "reactor.info.assembled.destroyer": "Reactor has been disassembled", "reactor.info.assembled.creator": "Reactor has been assembled", + "reactor.info.is": "controller is", "reactor.item.gui.name": "Config Pattern", - "reactor.update.casing.input": "Update the casing in input", - - "createnuclear.reactor.debug.title": "--- Reactor diagnostics ---", - "createnuclear.reactor.debug.summary": "%s: %s registered, %s valid", - "createnuclear.reactor.debug.registered_position": " registered @ %s", - "createnuclear.reactor.debug.valid_position": " valid @ %s", - "createnuclear.reactor.debug.label.input": "Input", - "createnuclear.reactor.debug.label.fluid_input": "Fluid Input", - "createnuclear.reactor.debug.label.output": "Output", - "createnuclear.reactor.debug.label.alarm": "Alarm" + "reactor.update.casing.input": "Update the casing in input" } \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/lang/default/tooltips.json b/src/main/resources/assets/createnuclear/lang/default/tooltips.json index bf47d4994..94b20cf05 100644 --- a/src/main/resources/assets/createnuclear/lang/default/tooltips.json +++ b/src/main/resources/assets/createnuclear/lang/default/tooltips.json @@ -4,13 +4,9 @@ "tag.item.createnuclear.fuel": "Fuel", - "block.createnuclear.reactor_rod_input.tooltip.summary": "_The Reactor Rod Input_ is a _block_ that can be used to insert _Heating_ or _Cooling_ rods into the Reactor.", - "block.createnuclear.reactor_rod_input.tooltip.condition1": "When the reactor is assembled", - "block.createnuclear.reactor_rod_input.tooltip.behaviour1": "Insert _Heating_ (like _Uranium_ or _Thorium_) and _Cooling_ (like _Graphite_) rods in large quantities to power _The Reactor_.", - - "block.createnuclear.reactor_fluid_input.tooltip.summary": "_The Reactor Fluid Input_ is a _block_ that can be used to insert _Water_ or _Liquid Nitrogen_ into the Reactor.", - "block.createnuclear.reactor_fluid_input.tooltip.condition1": "When the reactor is assembled", - "block.createnuclear.reactor_fluid_input.tooltip.behaviour1": "Insert _Water_ or _Liquid Nitrogen_ in large quantities to power _The Reactor_ and avoid _overheating_.", + "block.createnuclear.reactor_input.tooltip.summary": "_The Reactor Input_ is a _block_ that can be used to insert _Uranium_ and _Graphene_ rods into the _Reactor_", + "block.createnuclear.reactor_input.tooltip.condition1": "When the Reactor is assembled", + "block.createnuclear.reactor_input.tooltip.behaviour1": "Insert _uranium_ and _graphene_ rods in large quantities to power _the reactor_ ", "block.createnuclear.reactor_controller.tooltip.summary": " The _Reactor Controller_ is the _most important_ block for operating the reactor", @@ -33,33 +29,19 @@ "block.createnuclear.reactor_frame.tooltip.summary": "_Block_ used to build the _reactor_", - "item.createnuclear.graphite_rod.tooltip.summary": "_Rod_ to be used in the _reactor rod input_ to operate it.", - - "item.createnuclear.uranium_rod.tooltip.summary": "_Rod_ to be used in the _reactor rod input_ to operate it.", + "item.createnuclear.graphite_rod.tooltip.summary": "_Stick_ to be used in the _reactor input_ to operate it.", - "item.createnuclear.thorium_rod.tooltip.summary": "_Rod_ to be used in the _reactor rod input_ to operate it.", + "item.createnuclear.uranium_rod.tooltip.summary": "_Stick_ to be used in the _reactor input_ to operate it.", "item.createnuclear.reactor_blueprint_item.tooltip.summary": "It allows you to configure your own pattern.", - "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "Filled with cooling and heating rods", + "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "Filled with graphite and uranium rods", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour1": "_Right_ click to fill it.", "item.createnuclear.reactor_blueprint_item.tooltip.condition2": "The reactor must be assembled", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour2": "_Right_ click on the reactor controller to open it.", - "item.createnuclear.reactor_blueprint.tooltip": "Used to design and visualize the reactor's interior layout.", - "item.createnuclear.reactor_blueprint.tooltip_hint": "§7Press §eShift + Right Click §7to with the blueprint in hand to get the Wiki link.", - "item.createnuclear.reactor_blueprint.chat_info": "Follow the link to open the documentation:", - "item.createnuclear.reactor_blueprint.wiki_link": "[Open Official Wiki]", - "block.createnuclear.enriched_soul_soil.tooltip.summary": "The _only_ block who create _enriched fire_. Can be used to _craft_ enriched campfire or just to make a _green fire_.", + "block.createnuclear.enriched_soul_soil.tooltip.summary": "The _only_ block who create _enriched fire_.Can be used to _craft_ enriched campfire or just to make a _green fire_.", - "item.createnuclear.biome_irradiation_extractor.tooltip.summary": "This item is currently in _beta_ and might change in future updates.", - "createnuclear.tooltip.biome_irradiation_extractor.biome_restore": "Restorations: %d / %d", - "createnuclear.tooltip.statRod": "Rod Stat Pattern:", - "createnuclear.tooltip.baseRodHeat": "Base Rod Heat: %d Q", - "createnuclear.tooltip.proximityRodHeat": "Proximity Rod Heat: %.2f Q", - "createnuclear.tooltip.rodTimer": "Rod Duration: %d tick", - "createnuclear.tooltip.ratio": "Rod Value for ratio: %d", - "createnuclear.tooltip.typeRod": "Rod Type: %s", "tag.item.c.coal_dusts": "Coal Dusts", @@ -76,5 +58,6 @@ "tag.item.trinkets.head.face": "Head Face", - "attribute.name.createnuclear.generic.irradiated_resistance": "Radiation Resistance" + + "overlay.event_message": "⚠ Warning ⚠ %s timer" } \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/lang/en_US.json b/src/main/resources/assets/createnuclear/lang/en_US.json index b01ee4c7f..f7cde70fb 100644 --- a/src/main/resources/assets/createnuclear/lang/en_US.json +++ b/src/main/resources/assets/createnuclear/lang/en_US.json @@ -1,5 +1,4 @@ { - "biome.createnuclear.irradiated_land": "Irradiated Land", "block.createnuclear.deepslate_lead_ore": "Deepslate Lead Ore", "block.createnuclear.deepslate_uranium_ore": "Deepslate Uranium Ore", "block.createnuclear.enriched_soul_soil": "Enriched Soul Soil", @@ -24,17 +23,19 @@ "createnuclear.enriched.fan.recipe": "Bulk Enriched", "createnuclear.generic.unit.heat": "Q", "createnuclear.gui.reactor_controller.info_header.title": "Heat value", - "createnuclear.ponder.reactor.title.t1": "Reactor T1 — Construction", - "createnuclear.ponder.reactor.title.t2": "Reactor T2 — Construction", - "createnuclear.ponder.reactor.title.t3": "Reactor T3 — Construction", - "createnuclear.ponder.reactor.floor": "Floor ", - "createnuclear.ponder.reactor.input1": "Input: stores uranium/graphite. One per rod.", - "createnuclear.ponder.reactor.input2": "Input 2: secondary input (place on an edge, not on the frame).", - "createnuclear.ponder.reactor.liquid_input": "Liquid input: cooling fluid inlet. Place on an edge.", - "createnuclear.ponder.reactor.alarm": "Alarm: place on an edge (not on the frame). Triggers on overheating.", - "createnuclear.ponder.reactor.output": "Output: produces energy (SU).", - "createnuclear.ponder.reactor.controller": "Controller: central block that manages the reactor.", - "createnuclear.ponder.reactor.use_blueprint": "Use the Reactor Blueprint to assemble the multiblock.", + "createnuclear.ponder.reactor.header": "Setup from Reactor", + "createnuclear.ponder.reactor.text_1": "Floor 1", + "createnuclear.ponder.reactor.text_10": "Floor 7", + "createnuclear.ponder.reactor.text_2": "Reactor Output: This is where the block outputs the energy (SU) generated from production.", + "createnuclear.ponder.reactor.text_3": "Floor 2", + "createnuclear.ponder.reactor.text_4": "Floor 3", + "createnuclear.ponder.reactor.text_5": "Floor 4", + "createnuclear.ponder.reactor.text_6": "Reactor Input: A block that stores uranium rods and graphite rods to operate the reactor.", + "createnuclear.ponder.reactor.text_7": "Reactor Controller: The most important block for operating the reactor; it handles all the calculations needed to generate energy.", + "createnuclear.ponder.reactor.text_8": "Floor 5", + "createnuclear.ponder.reactor.text_9": "Floor 6", + "createnuclear.ponder.reactor_blueprint.header": "Enable controller", + "createnuclear.ponder.reactor_blueprint.text_1": "Reactor Blueprint: The most important item; it allows you to configure the reactor according to specific patterns.", "createnuclear.tooltip.heatLevel": "Heat Level", "createnuclear.tooltip.heatLevel.caution": "Caution", "createnuclear.tooltip.heatLevel.danger": "Danger", @@ -164,6 +165,5 @@ "tag.item.createnuclear.fuel": "Fuel", "tag.item.minecraft.all.campfires": "All Campfires", "tag.item.minecraft.campfires": "Campfires", - "tag.item.trinkets.head.face": "Head Face", - "item.createnuclear.raw_thorium": "Raw Thorium" + "tag.item.trinkets.head.face": "Head Face" } \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/lang/fr_fr.json b/src/main/resources/assets/createnuclear/lang/fr_fr.json index 230603b90..f791d02ca 100644 --- a/src/main/resources/assets/createnuclear/lang/fr_fr.json +++ b/src/main/resources/assets/createnuclear/lang/fr_fr.json @@ -1,6 +1,7 @@ { - "biome.createnuclear.irradiated_land": "Terres irradiées", - "advancement.createnuclear.anti_radiation_armor": "Armure anti-radiation", + "advancement.createnuclear.absolute_zero": "Absolute Zero", + "advancement.createnuclear.absolute_zero.desc": "Mix cooled nitrogen concentrate to obtain liquid nitrogen", + "advancement.createnuclear.anti_radiation_armor": "Anti Radiation Armor", "advancement.createnuclear.anti_radiation_armor.desc": "Fabriquez votre première pièce d'armure anti-radiation pour vous protéger des radiations", "advancement.createnuclear.automatic_uranium": "Automatisation de l'uranium", "advancement.createnuclear.automatic_uranium.desc": "Obtenez de la poudre d'uranium en utilisant le traitement automatique de l'uranium\n§7(Progrès caché)", @@ -135,14 +136,6 @@ "block.createnuclear.reactor_fluid_input.tooltip.summary": "_The Reactor Fluid Input_ is a _block_ that can be used to insert _Water_ or _Liquid Nitrogen_ into the Reactor.", "block.createnuclear.reactor_frame": "Structure de réacteur", "block.createnuclear.reactor_frame.tooltip.summary": "_Bloc_ utilisé pour construire le _réacteur_", - "block.createnuclear.reactor_input": "Entrée de réacteur", - "block.createnuclear.reactor_input.tooltip.behaviour1": "Insérer des barres de _chauffage_ (comme l'_uranium_ ou le _thorium_) et de _refroidissement_ (comme le _graphite_) en grandes quantités pour alimenter _le réacteur_.", - "block.createnuclear.reactor_input.tooltip.condition1": "Quand le réacteur est assemblé", - "block.createnuclear.reactor_input.tooltip.summary": "_L'entrée de barre de réacteur_ est un _bloc_ qui peut être utilisé pour insérer des barres de _chauffage_ ou de _refroidissement_ dans le réacteur.", - - "block.createnuclear.reactor_liquid_input.tooltip.summary": "_L'entrée de fluide de réacteur_ est un _bloc_ qui peut être utilisé pour insérer de l'_eau_ ou de l'_azote liquide_ dans le réacteur.", - "block.createnuclear.reactor_liquid_input.tooltip.condition1": "Quand le réacteur est assemblé", - "block.createnuclear.reactor_liquid_input.tooltip.behaviour1": "Insérer de l'_eau_ ou de l'_azote liquide_ en grandes quantités pour alimenter _le réacteur_ et éviter la _surchauffe_.", "block.createnuclear.reactor_output": "Sortie de réacteur", "block.createnuclear.reactor_output.tooltip.behaviour1": "Vous pouvez _extraire l'énergie_ produite par le réacteur en attachant un _rotor_ à la sortie du _réacteur_", "block.createnuclear.reactor_output.tooltip.condition1": "Quand le réacteur produit de l'énergie", @@ -375,15 +368,12 @@ "item.createnuclear.reactor_blueprint_item": "Plan du réacteur", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour1": "Faites un clic _droit_ pour le remplir.", "item.createnuclear.reactor_blueprint_item.tooltip.behaviour2": "Faites un clic _droit_ sur le contrôleur de réacteur pour l'ouvrir.", - "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "Rempli de barres de refroidissement et de chauffage", "item.createnuclear.reactor_blueprint_item.tooltip.condition1": "Filled with cooling and heating rods", "item.createnuclear.reactor_blueprint_item.tooltip.condition2": "Le réacteur doit être assemblé", "item.createnuclear.reactor_blueprint_item.tooltip.summary": "Il vous permet de configurer votre propre paterne.", "item.createnuclear.red_cloth": "Tissu rouge", "item.createnuclear.steel_ingot": "Lingot d'acier", "item.createnuclear.steel_nugget": "Pépite d'acier", - "item.createnuclear.thorium_rod": "Barre de thorium", - "item.createnuclear.thorium_rod.tooltip.summary": "_Barre_ pour être utilisé dans _l'entrée du réacteur_ pour l'utiliser.", "item.createnuclear.thorium_bucket": "Thorium Bucket", "item.createnuclear.thorium_dust": "Thorium Dust", "item.createnuclear.thorium_ingot": "Thorium Ingot", @@ -435,7 +425,5 @@ "tag.item.createnuclear.fuel": "Carburant", "tag.item.minecraft.all.campfires": "Tous les feux de camps", "tag.item.minecraft.campfires": "Feu de camps", - "tag.item.trinkets.head.face": "Face avant", - "item.createnuclear.raw_thorium": "Thorium brut" "tag.item.trinkets.head.face": "Face avant" } diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/controller/item.json b/src/main/resources/assets/createnuclear/models/block/reactor/controller/item.json index fa132ac75..7a0ca2382 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/controller/item.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/controller/item.json @@ -2,9 +2,9 @@ "credit": "Made with Blockbench", "parent": "block/cube", "textures": { - "1": "createnuclear:block/reactor/controller/controller_panel_on", + "1": "createnuclear:block/reactor/controller/controller_panel", "2": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/controller/controller_panel_on" + "particle": "createnuclear:block/reactor/controller/controller_panel" }, "elements": [ { diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input.json b/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input.json deleted file mode 100644 index 91e7ce7d6..000000000 --- a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "textures": { - "0": "createnuclear:block/reactor/casing/reactor_casing", - "1": "createnuclear:block/reactor/fluid_input/fluid_input", - "2": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/casing/reactor_casing" - }, - "elements": [ - { - "name": "right", - "from": [14, 0, 15], - "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 11.5]}, - "faces": { - "east": {"uv": [0, 0, 1, 16], "texture": "#0"}, - "south": {"uv": [14, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [13, 0, 14, 16], "texture": "#1"}, - "up": {"uv": [14, 0, 16, 1], "rotation": 180, "texture": "#2"}, - "down": {"uv": [14, 15, 16, 16], "rotation": 180, "texture": "#2"} - } - }, - { - "name": "left", - "from": [0, 0, 15], - "to": [2, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 11.5]}, - "faces": { - "north": {"uv": [0, 0, 2, 16], "texture": "#1"}, - "east": {"uv": [2, 0, 3, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 2, 16], "texture": "#1"}, - "west": {"uv": [15, 0, 16, 16], "texture": "#0"}, - "up": {"uv": [0, 0, 2, 1], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 15, 2, 16], "rotation": 180, "texture": "#2"} - } - }, - { - "name": "down", - "from": [2, 0, 15], - "to": [14, 2, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 11.5]}, - "faces": { - "south": {"uv": [2, 14, 14, 16], "texture": "#1"}, - "up": {"uv": [2, 14, 14, 15], "rotation": 180, "texture": "#1"}, - "down": {"uv": [2, 15, 14, 16], "rotation": 180, "texture": "#2"} - } - }, - { - "name": "up", - "from": [2, 14, 15], - "to": [14, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 11.5]}, - "faces": { - "south": {"uv": [2, 0, 14, 2], "texture": "#1"}, - "up": {"uv": [2, 0, 14, 1], "rotation": 180, "texture": "#2"}, - "down": {"uv": [2, 1, 14, 2], "rotation": 180, "texture": "#1"} - } - }, - { - "name": "core", - "from": [0, 0, 0], - "to": [16, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 11.5]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "east": {"uv": [1, 0, 16, 16], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 15, 16], "texture": "#0"}, - "up": {"uv": [0, 1, 16, 16], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 0, 16, 15], "rotation": 180, "texture": "#2"} - } - } - ], - "groups": [ - { - "name": "block", - "origin": [8, 8, 8], - "color": 0, - "children": [ - { - "name": "north", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - 4 - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input_vertical.json b/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input_vertical.json deleted file mode 100644 index bdb0efb7a..000000000 --- a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/fluid_input_vertical.json +++ /dev/null @@ -1,249 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "textures": { - "0": "createnuclear:block/reactor/fluid_input/fluid_input", - "1": "createnuclear:block/reactor/casing/reactor_casing", - "2": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/rod_input/rod_input" - }, - "elements": [ - { - "from": [0, 0, 0], - "to": [16, 14, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#1"}, - "east": {"uv": [0, 0, 14, 16], "rotation": 270, "texture": "#2"}, - "south": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#1"}, - "west": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#2"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#2"} - } - }, - { - "from": [12, 14, 0], - "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 12, 2, 16], "rotation": 90, "texture": "#1"}, - "east": {"uv": [14, 0, 16, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 0, 2, 4], "rotation": 90, "texture": "#1"}, - "west": {"uv": [3, 0, 5, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [0, 0, 4, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [12, 0, 16, 16], "texture": "#0"} - } - }, - { - "from": [0, 14, 0], - "to": [4, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 0, 2, 4], "rotation": 90, "texture": "#1"}, - "east": {"uv": [11, 0, 13, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 12, 2, 16], "rotation": 90, "texture": "#1"}, - "west": {"uv": [0, 0, 2, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [12, 0, 16, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 0, 4, 16], "texture": "#0"} - } - }, - { - "from": [4, 14, 0], - "to": [5, 16, 7], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 4, 2, 5], "rotation": 90, "texture": "#1"}, - "east": {"uv": [10, 9, 12, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [4, 9, 6, 10], "rotation": 90, "texture": "#0"}, - "west": {"uv": [10, 9, 12, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [11, 9, 12, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [11, 9, 12, 16], "texture": "#0"} - } - }, - { - "from": [11, 14, 0], - "to": [12, 16, 7], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 11, 2, 12], "rotation": 90, "texture": "#1"}, - "east": {"uv": [4, 9, 6, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [4, 9, 6, 10], "rotation": 90, "texture": "#0"}, - "west": {"uv": [4, 9, 6, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [4, 9, 5, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [4, 9, 5, 16], "texture": "#0"} - } - }, - { - "from": [11, 14, 9], - "to": [12, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [4, 6, 6, 7], "rotation": 90, "texture": "#0"}, - "east": {"uv": [4, 0, 6, 7], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 11, 2, 12], "rotation": 90, "texture": "#1"}, - "west": {"uv": [4, 0, 6, 7], "rotation": 90, "texture": "#0"}, - "up": {"uv": [4, 0, 5, 7], "rotation": 180, "texture": "#0"}, - "down": {"uv": [4, 0, 5, 7], "texture": "#0"} - } - }, - { - "from": [4, 14, 9], - "to": [5, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [4, 6, 6, 7], "rotation": 90, "texture": "#0"}, - "east": {"uv": [10, 0, 12, 7], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 4, 2, 5], "rotation": 90, "texture": "#1"}, - "west": {"uv": [10, 0, 12, 7], "rotation": 90, "texture": "#0"}, - "up": {"uv": [11, 0, 12, 7], "rotation": 180, "texture": "#0"}, - "down": {"uv": [11, 0, 12, 7], "texture": "#0"} - } - }, - { - "from": [5, 14, 10], - "to": [6, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [5, 5, 7, 6], "rotation": 90, "texture": "#0"}, - "east": {"uv": [9, 0, 11, 6], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 6, 2, 7], "rotation": 90, "texture": "#1"}, - "west": {"uv": [9, 0, 11, 6], "rotation": 90, "texture": "#0"}, - "up": {"uv": [10, 0, 11, 6], "rotation": 180, "texture": "#0"}, - "down": {"uv": [10, 0, 11, 6], "texture": "#0"} - } - }, - { - "from": [10, 14, 10], - "to": [11, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [5, 5, 7, 6], "rotation": 90, "texture": "#0"}, - "east": {"uv": [5, 0, 7, 6], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 10, 2, 11], "rotation": 90, "texture": "#1"}, - "west": {"uv": [5, 0, 7, 6], "rotation": 90, "texture": "#0"}, - "up": {"uv": [5, 0, 6, 6], "rotation": 180, "texture": "#0"}, - "down": {"uv": [5, 0, 6, 6], "texture": "#0"} - } - }, - { - "from": [10, 14, 0], - "to": [11, 16, 6], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 10, 2, 11], "rotation": 90, "texture": "#1"}, - "east": {"uv": [5, 10, 7, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [5, 10, 7, 11], "rotation": 90, "texture": "#0"}, - "west": {"uv": [5, 10, 7, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [5, 10, 6, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [5, 10, 6, 16], "texture": "#0"} - } - }, - { - "from": [9, 14, 0], - "to": [10, 16, 5], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 9, 2, 10], "rotation": 90, "texture": "#1"}, - "east": {"uv": [6, 11, 8, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [6, 11, 8, 12], "rotation": 90, "texture": "#0"}, - "west": {"uv": [6, 11, 8, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [6, 11, 7, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [6, 11, 7, 16], "texture": "#0"} - } - }, - { - "from": [6, 14, 0], - "to": [7, 16, 5], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 6, 2, 7], "rotation": 90, "texture": "#1"}, - "east": {"uv": [8, 11, 10, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [6, 11, 8, 12], "rotation": 90, "texture": "#0"}, - "west": {"uv": [8, 11, 10, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [9, 11, 10, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [9, 11, 10, 16], "texture": "#0"} - } - }, - { - "from": [6, 14, 11], - "to": [7, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [6, 4, 8, 5], "rotation": 90, "texture": "#0"}, - "east": {"uv": [8, 0, 10, 5], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 7, 2, 8], "rotation": 90, "texture": "#1"}, - "west": {"uv": [8, 0, 10, 5], "rotation": 90, "texture": "#0"}, - "up": {"uv": [9, 0, 10, 5], "rotation": 180, "texture": "#0"}, - "down": {"uv": [9, 0, 10, 5], "texture": "#0"} - } - }, - { - "from": [9, 14, 11], - "to": [10, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [6, 4, 8, 5], "rotation": 90, "texture": "#0"}, - "east": {"uv": [6, 0, 8, 5], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 9, 2, 10], "rotation": 90, "texture": "#1"}, - "west": {"uv": [6, 0, 8, 5], "rotation": 90, "texture": "#0"}, - "up": {"uv": [6, 0, 7, 5], "rotation": 180, "texture": "#0"}, - "down": {"uv": [6, 0, 7, 5], "texture": "#0"} - } - }, - { - "from": [7, 14, 12], - "to": [9, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [3, 7, 5, 9], "rotation": 90, "texture": "#0"}, - "east": {"uv": [7, 0, 9, 4], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 7, 2, 9], "rotation": 90, "texture": "#1"}, - "west": {"uv": [7, 0, 9, 4], "rotation": 90, "texture": "#0"}, - "up": {"uv": [7, 0, 9, 4], "rotation": 180, "texture": "#0"}, - "down": {"uv": [7, 0, 9, 4], "texture": "#0"} - } - }, - { - "from": [7, 14, 0], - "to": [9, 16, 4], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 7, 2, 9], "rotation": 90, "texture": "#1"}, - "east": {"uv": [7, 12, 9, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [3, 7, 5, 9], "rotation": 90, "texture": "#0"}, - "west": {"uv": [7, 12, 9, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [7, 12, 9, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [7, 12, 9, 16], "texture": "#0"} - } - }, - { - "from": [5, 14, 0], - "to": [6, 16, 6], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 5, 2, 6], "rotation": 90, "texture": "#1"}, - "east": {"uv": [9, 10, 11, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [5, 10, 7, 11], "rotation": 90, "texture": "#0"}, - "west": {"uv": [9, 10, 11, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [10, 10, 11, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [10, 10, 11, 16], "texture": "#0"} - } - } - ], - "groups": [ - { - "name": "group", - "origin": [0, 0, 0], - "color": 0, - "children": [ - 0, - { - "name": "face", - "origin": [8, 8, 8], - "color": 0, - "children": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/item.json b/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/item.json deleted file mode 100644 index 67a5e7968..000000000 --- a/src/main/resources/assets/createnuclear/models/block/reactor/fluid_input/item.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "textures": { - "0": "createnuclear:block/reactor/casing/reactor_casing", - "1": "createnuclear:block/reactor/fluid_input/fluid_input", - "2": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/casing/reactor_casing" - }, - "elements": [ - { - "name": "right", - "from": [0, 0, 0], - "to": [2, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4.5]}, - "faces": { - "north": {"uv": [14, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [13, 0, 14, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 1, 16], "texture": "#0"}, - "up": {"uv": [14, 0, 16, 1], "texture": "#2"}, - "down": {"uv": [14, 15, 16, 16], "texture": "#2"} - } - }, - { - "name": "left", - "from": [14, 0, 0], - "to": [16, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4.5]}, - "faces": { - "north": {"uv": [0, 0, 2, 16], "texture": "#1"}, - "east": {"uv": [15, 0, 16, 16], "texture": "#0"}, - "south": {"uv": [0, 0, 2, 16], "texture": "#1"}, - "west": {"uv": [2, 0, 3, 16], "texture": "#1"}, - "up": {"uv": [0, 0, 2, 1], "texture": "#2"}, - "down": {"uv": [0, 15, 2, 16], "texture": "#2"} - } - }, - { - "name": "down", - "from": [2, 0, 0], - "to": [14, 2, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4.5]}, - "faces": { - "north": {"uv": [2, 14, 14, 16], "texture": "#1"}, - "up": {"uv": [2, 14, 14, 15], "texture": "#1"}, - "down": {"uv": [2, 15, 14, 16], "texture": "#2"} - } - }, - { - "name": "up", - "from": [2, 14, 0], - "to": [14, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4.5]}, - "faces": { - "north": {"uv": [2, 0, 14, 2], "texture": "#1"}, - "up": {"uv": [2, 0, 14, 1], "texture": "#2"}, - "down": {"uv": [2, 1, 14, 2], "texture": "#1"} - } - }, - { - "name": "core", - "from": [0, 0, 1], - "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 4.5]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 15, 16], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "west": {"uv": [1, 0, 16, 16], "texture": "#0"}, - "up": {"uv": [0, 1, 16, 16], "texture": "#2"}, - "down": {"uv": [0, 0, 16, 15], "texture": "#2"} - } - } - ], - "groups": [ - { - "name": "block", - "origin": [8, 8, 8], - "color": 0, - "children": [ - { - "name": "north", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - 4 - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_bottom.json b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_bottom.json index 4f44b7f95..e315baef7 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_bottom.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_bottom.json @@ -1,22 +1,25 @@ { - "format_version": "1.21.11", "credit": "Made with Blockbench", "parent": "block/block", "textures": { + "0": "createnuclear:block/reactor/casing/casing_inner", + "1": "createnuclear:block/reactor/casing/casing_top", "2": "createnuclear:block/reactor/frame/window", "3": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/casing/reactor_casing" + "4": "createnuclear:fluid/uranium_still", + "5": "createnuclear:fluid/uranium_flow", + "particle": "createnuclear:block/reactor/casing/casing_inner" }, "elements": [ { "name": "SideRight", "from": [1, 4, 0], "to": [4, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 0.5]}, + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [12, 5, 15, 12], "texture": "#3", "cullface": "north"}, "east": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "north"}, - "south": {"uv": [1, 3, 4, 15], "texture": "#3", "cullface": "north"}, + "south": {"uv": [1, 0, 4, 12], "texture": "#3", "cullface": "north"}, "west": {"uv": [4, 0, 5, 12], "texture": "#3"}, "down": {"uv": [1, 12, 4, 11], "texture": "#3"} } @@ -25,11 +28,11 @@ "name": "SideLeft", "from": [12, 4, 0], "to": [15, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 0.5]}, + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [1, 5, 4, 12], "texture": "#3", "cullface": "north"}, "east": {"uv": [11, 0, 12, 12], "texture": "#3"}, - "south": {"uv": [12, 3, 15, 15], "texture": "#3", "cullface": "north"}, + "south": {"uv": [12, 0, 15, 12], "texture": "#3", "cullface": "north"}, "west": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "north"}, "down": {"uv": [12, 11, 15, 12], "texture": "#3"} } @@ -49,11 +52,10 @@ "name": "SideRight", "from": [15, 4, 1], "to": [16, 16, 4], - "rotation": {"angle": 0, "axis": "y", "origin": [15.5, 10, 8]}, "faces": { "east": {"uv": [12, 5, 15, 12], "texture": "#3", "cullface": "east"}, "south": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "east"}, - "west": {"uv": [1, 3, 4, 15], "texture": "#3", "cullface": "east"}, + "west": {"uv": [1, 0, 4, 12], "texture": "#3", "cullface": "east"}, "down": {"uv": [11, 2, 12, 5], "texture": "#3"} } }, @@ -61,11 +63,10 @@ "name": "SideLeft", "from": [15, 4, 12], "to": [16, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [15.5, 10, 8]}, "faces": { "north": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "east"}, "east": {"uv": [1, 5, 4, 12], "texture": "#3", "cullface": "east"}, - "west": {"uv": [12, 3, 15, 15], "texture": "#3", "cullface": "east"}, + "west": {"uv": [12, 0, 15, 12], "texture": "#3", "cullface": "east"}, "down": {"uv": [12, 9, 13, 12], "texture": "#3"} } }, @@ -82,9 +83,8 @@ "name": "SideRight", "from": [12, 4, 15], "to": [15, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 15.5]}, "faces": { - "north": {"uv": [1, 3, 4, 15], "texture": "#3", "cullface": "south"}, + "north": {"uv": [1, 0, 4, 12], "texture": "#3", "cullface": "south"}, "south": {"uv": [12, 5, 15, 12], "texture": "#3", "cullface": "south"}, "west": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "south"}, "down": {"uv": [12, 11, 15, 12], "texture": "#3"} @@ -94,9 +94,8 @@ "name": "SideLeft", "from": [1, 4, 15], "to": [4, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 15.5]}, "faces": { - "north": {"uv": [12, 3, 15, 15], "texture": "#3", "cullface": "south"}, + "north": {"uv": [12, 0, 15, 12], "texture": "#3", "cullface": "south"}, "east": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "south"}, "south": {"uv": [1, 5, 4, 12], "texture": "#3", "cullface": "south"}, "down": {"uv": [1, 11, 4, 12], "texture": "#3"} @@ -115,10 +114,9 @@ "name": "SideRight", "from": [0, 4, 12], "to": [1, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 10, 8]}, "faces": { "north": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "west"}, - "east": {"uv": [1, 3, 4, 15], "texture": "#3", "cullface": "west"}, + "east": {"uv": [1, 0, 4, 12], "texture": "#3", "cullface": "west"}, "west": {"uv": [12, 5, 15, 12], "texture": "#3", "cullface": "west"}, "down": {"uv": [11, 9, 12, 12], "texture": "#3"} } @@ -127,9 +125,8 @@ "name": "SideLeft", "from": [0, 4, 1], "to": [1, 16, 4], - "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 10, 8]}, "faces": { - "east": {"uv": [12, 3, 15, 15], "texture": "#3", "cullface": "west"}, + "east": {"uv": [12, 0, 15, 12], "texture": "#3", "cullface": "west"}, "south": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "west"}, "west": {"uv": [1, 5, 4, 12], "texture": "#3", "cullface": "west"}, "down": {"uv": [4, 9, 5, 12], "texture": "#3"} @@ -190,8 +187,21 @@ "east": {"uv": [0, 12, 16, 16], "texture": "#3", "cullface": "east"}, "south": {"uv": [0, 12, 16, 16], "texture": "#3", "cullface": "south"}, "west": {"uv": [0, 12, 16, 16], "texture": "#3", "cullface": "west"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#3"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#3", "cullface": "down"} + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#1", "cullface": "down"} + } + }, + { + "name": "fluid", + "from": [1, 4, 1], + "to": [15, 16, 15], + "faces": { + "north": {"uv": [0, 0, 7, 6], "texture": "#5"}, + "east": {"uv": [0, 0, 7, 6], "texture": "#5"}, + "south": {"uv": [0, 0, 7, 6], "texture": "#5"}, + "west": {"uv": [0, 0, 7, 6], "texture": "#5"}, + "up": {"uv": [0, 0, 14, 14], "texture": "#4"}, + "down": {"uv": [0, 0, 7, 7], "texture": "#4"} } } ], diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_middle.json b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_middle.json index be631e36a..639116c97 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_middle.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_middle.json @@ -1,9 +1,10 @@ { - "format_version": "1.21.11", "credit": "Made with Blockbench", "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/frame/window", + "1": "createnuclear:fluid/uranium_flow", + "2": "createnuclear:fluid/uranium_still", "3": "createnuclear:block/reactor/casing/reactor_casing", "particle": "createnuclear:block/reactor/frame/window" }, @@ -51,22 +52,22 @@ "name": "SideRight", "from": [1, 0, 0], "to": [4, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 0.5]}, + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [12, 5, 15, 11], "texture": "#3", "cullface": "north"}, "east": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "north"}, - "south": {"uv": [1, 3, 4, 13], "texture": "#3", "cullface": "north"} + "south": {"uv": [1, 0, 4, 16], "texture": "#3", "cullface": "north"} } }, { "name": "SideLeft", "from": [12, 0, 0], "to": [15, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 0.5]}, + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [1, 5, 4, 11], "texture": "#3", "cullface": "north"}, "east": {"uv": [11, 0, 12, 16], "texture": "#3"}, - "south": {"uv": [12, 3, 16, 13], "texture": "#3", "cullface": "north"}, + "south": {"uv": [12, 0, 16, 16], "texture": "#3", "cullface": "north"}, "west": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "north"} } }, @@ -83,23 +84,21 @@ "name": "SideRight", "from": [15, 0, 1], "to": [16, 16, 4], - "rotation": {"angle": 0, "axis": "y", "origin": [15.5, 8, 8]}, "faces": { "east": {"uv": [12, 5, 15, 11], "texture": "#3", "cullface": "east"}, "south": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "east"}, - "west": {"uv": [1, 3, 4, 13], "texture": "#3", "cullface": "east"} + "west": {"uv": [1, 0, 4, 16], "texture": "#3", "cullface": "east"} } }, { "name": "SideLeft", "from": [15, 0, 12], "to": [16, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [15.5, 8, 8]}, "faces": { "north": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "east"}, "east": {"uv": [1, 5, 4, 11], "texture": "#3", "cullface": "east"}, "south": {"uv": [11, 0, 12, 16], "texture": "#3"}, - "west": {"uv": [12, 3, 15, 13], "texture": "#3", "cullface": "east"} + "west": {"uv": [12, 0, 15, 16], "texture": "#3", "cullface": "east"} } }, { @@ -114,9 +113,8 @@ "name": "SideRight", "from": [12, 0, 15], "to": [15, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 15.5]}, "faces": { - "north": {"uv": [1, 3, 4, 13], "texture": "#3", "cullface": "south"}, + "north": {"uv": [1, 0, 4, 16], "texture": "#3", "cullface": "south"}, "east": {"uv": [4, 0, 5, 16], "texture": "#3"}, "south": {"uv": [12, 5, 15, 11], "texture": "#3", "cullface": "south"}, "west": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "south"} @@ -126,9 +124,8 @@ "name": "SideLeft", "from": [1, 0, 15], "to": [4, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 15.5]}, "faces": { - "north": {"uv": [12, 3, 15, 13], "texture": "#3", "cullface": "south"}, + "north": {"uv": [12, 0, 15, 16], "texture": "#3", "cullface": "south"}, "east": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "south"}, "south": {"uv": [1, 5, 4, 11], "texture": "#3", "cullface": "south"}, "west": {"uv": [4, 0, 5, 16], "texture": "#3"} @@ -146,10 +143,9 @@ "name": "SideRight", "from": [0, 0, 12], "to": [1, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 8, 8]}, "faces": { "north": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "west"}, - "east": {"uv": [1, 3, 4, 13], "texture": "#3", "cullface": "west"}, + "east": {"uv": [1, 0, 4, 16], "texture": "#3", "cullface": "west"}, "west": {"uv": [12, 5, 15, 11], "texture": "#3", "cullface": "west"} } }, @@ -157,9 +153,8 @@ "name": "SideLeft", "from": [0, 0, 1], "to": [1, 16, 4], - "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 8, 8]}, "faces": { - "east": {"uv": [12, 3, 15, 13], "texture": "#3", "cullface": "west"}, + "east": {"uv": [12, 0, 15, 16], "texture": "#3", "cullface": "west"}, "south": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "west"}, "west": {"uv": [1, 5, 4, 11], "texture": "#3", "cullface": "west"} } @@ -171,6 +166,19 @@ "north": {"uv": [15, 5, 16, 11], "texture": "#3"}, "west": {"uv": [0, 5, 1, 11], "texture": "#3"} } + }, + { + "name": "Liquid", + "from": [1, 0, 1], + "to": [15, 16, 15], + "faces": { + "north": {"uv": [0, 0, 7, 8], "texture": "#1"}, + "east": {"uv": [0, 0, 7, 8], "texture": "#1"}, + "south": {"uv": [0, 0, 7, 8], "texture": "#1"}, + "west": {"uv": [0, 0, 7, 8], "texture": "#1"}, + "up": {"uv": [0, 0, 14, 14], "texture": "#2"}, + "down": {"uv": [0, 0, 14, 14], "texture": "#2"} + } } ], "groups": [ diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_none.json b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_none.json index 41640b3c2..8fa0e6878 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_none.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_none.json @@ -2,11 +2,13 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { + "4": "createnuclear:fluid/uranium_still", + "5": "createnuclear:fluid/uranium_flow", "6": "createnuclear:block/reactor/casing/reactor_casing", - "8": "createnuclear:block/reactor/casing/reactor_casing", - "9": "createnuclear:block/reactor/casing/reactor_casing", + "8": "createnuclear:block/reactor/casing/casing_inner", + "9": "createnuclear:block/reactor/casing/casing_top", "10": "createnuclear:block/reactor/frame/window_single", - "particle": "createnuclear:block/reactor/casing/reactor_casing" + "particle": "createnuclear:fluid/uranium_still" }, "elements": [ { @@ -155,6 +157,20 @@ "up": {"uv": [0, 0, 16, 16], "texture": "#8"}, "down": {"uv": [0, 0, 16, 16], "texture": "#9", "cullface": "down"} } + }, + { + "name": "Liquid", + "from": [1, 2.9, 1], + "to": [15, 9.9, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7.5, 6.4, 8]}, + "faces": { + "north": {"uv": [0, 0, 7, 3.5], "texture": "#5"}, + "east": {"uv": [0, 0, 7, 3.5], "texture": "#5"}, + "south": {"uv": [0, 0, 7, 3.5], "texture": "#5"}, + "west": {"uv": [0, 0, 7, 3.5], "texture": "#5"}, + "up": {"uv": [0, 0, 14, 14], "texture": "#4"}, + "down": {"uv": [0, 0, 14, 14], "texture": "#4"} + } } ], "display": { diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_top.json b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_top.json index 1c840c154..e8d897c1f 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_top.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/frame/frame_top.json @@ -1,11 +1,14 @@ { - "format_version": "1.21.11", "credit": "Made with Blockbench", "parent": "block/block", "textures": { + "0": "createnuclear:block/reactor/casing/casing_inner", + "1": "createnuclear:block/reactor/casing/casing_top", "2": "createnuclear:block/reactor/frame/window", "3": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/casing/reactor_casing" + "4": "createnuclear:fluid/uranium_flow", + "5": "createnuclear:fluid/uranium_still", + "particle": "createnuclear:block/reactor/casing/casing_inner" }, "elements": [ { @@ -53,7 +56,7 @@ "faces": { "north": {"uv": [12, 4, 15, 11], "texture": "#3", "cullface": "north"}, "east": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "north"}, - "south": {"uv": [1, 1, 4, 13], "texture": "#3", "cullface": "north"} + "south": {"uv": [1, 4, 4, 16], "texture": "#3", "cullface": "north"} } }, { @@ -63,7 +66,7 @@ "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [1, 4, 4, 11], "texture": "#3", "cullface": "north"}, - "south": {"uv": [12, 1, 15, 13], "texture": "#3", "cullface": "north"}, + "south": {"uv": [12, 4, 15, 16], "texture": "#3", "cullface": "north"}, "west": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "north"} } }, @@ -82,7 +85,7 @@ "faces": { "east": {"uv": [12, 4, 15, 11], "texture": "#3", "cullface": "east"}, "south": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "east"}, - "west": {"uv": [1, 1, 4, 13], "texture": "#3", "cullface": "east"} + "west": {"uv": [1, 4, 4, 16], "texture": "#3", "cullface": "east"} } }, { @@ -92,7 +95,7 @@ "faces": { "north": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "east"}, "east": {"uv": [1, 4, 4, 11], "texture": "#3", "cullface": "east"}, - "west": {"uv": [12, 1, 15, 13], "texture": "#3", "cullface": "east"} + "west": {"uv": [12, 4, 15, 16], "texture": "#3", "cullface": "east"} } }, { @@ -108,7 +111,7 @@ "from": [12, 0, 15], "to": [15, 12, 16], "faces": { - "north": {"uv": [1, 1, 4, 13], "texture": "#3", "cullface": "south"}, + "north": {"uv": [1, 4, 4, 16], "texture": "#3", "cullface": "south"}, "south": {"uv": [12, 4, 15, 11], "texture": "#3", "cullface": "south"}, "west": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "south"} } @@ -118,7 +121,7 @@ "from": [1, 0, 15], "to": [4, 12, 16], "faces": { - "north": {"uv": [12, 1, 15, 13], "texture": "#3", "cullface": "south"}, + "north": {"uv": [12, 4, 15, 16], "texture": "#3", "cullface": "south"}, "east": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "south"}, "south": {"uv": [1, 4, 4, 11], "texture": "#3", "cullface": "south"} } @@ -138,7 +141,7 @@ "to": [1, 12, 15], "faces": { "north": {"uv": [11, 4, 12, 12], "texture": "#3", "cullface": "west"}, - "east": {"uv": [1, 1, 4, 13], "texture": "#3", "cullface": "west"}, + "east": {"uv": [1, 4, 4, 16], "texture": "#3", "cullface": "west"}, "west": {"uv": [12, 4, 15, 11], "texture": "#3", "cullface": "west"} } }, @@ -147,7 +150,7 @@ "from": [0, 0, 1], "to": [1, 12, 4], "faces": { - "east": {"uv": [12, 1, 15, 13], "texture": "#3", "cullface": "west"}, + "east": {"uv": [12, 4, 15, 16], "texture": "#3", "cullface": "west"}, "south": {"uv": [4, 4, 5, 12], "texture": "#3", "cullface": "west"}, "west": {"uv": [1, 4, 4, 11], "texture": "#3", "cullface": "west"} } @@ -164,14 +167,27 @@ "name": "Top", "from": [0, 12, 0], "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 14, 8]}, + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, -23]}, "faces": { "north": {"uv": [0, 0, 16, 4], "texture": "#3", "cullface": "north"}, "east": {"uv": [0, 0, 16, 4], "texture": "#3", "cullface": "east"}, "south": {"uv": [0, 0, 16, 4], "texture": "#3", "cullface": "south"}, "west": {"uv": [0, 0, 16, 4], "texture": "#3", "cullface": "west"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#3", "cullface": "up"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#3"} + "up": {"uv": [0, 0, 16, 16], "texture": "#1", "cullface": "up"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + }, + { + "name": "fluid", + "from": [1, 0, 1], + "to": [15, 9, 15], + "faces": { + "north": {"uv": [0, 0, 7, 4.5], "texture": "#4"}, + "east": {"uv": [0, 0, 7, 4.5], "texture": "#4"}, + "south": {"uv": [0, 0, 7, 4.5], "texture": "#4"}, + "west": {"uv": [0, 0, 7, 4.5], "texture": "#4"}, + "up": {"uv": [0, 0, 14, 14], "texture": "#5"}, + "down": {"uv": [0, 0, 14, 14], "texture": "#5"} } } ], diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input.json b/src/main/resources/assets/createnuclear/models/block/reactor/input/block.json similarity index 95% rename from src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input.json rename to src/main/resources/assets/createnuclear/models/block/reactor/input/block.json index e51c47749..ba6c0e1f4 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/input/block.json @@ -3,8 +3,8 @@ "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/casing/reactor_casing", - "1": "createnuclear:block/reactor/rod_input/rod_input", - "2": "createnuclear:block/reactor/casing/reactor_casing", + "1": "createnuclear:block/reactor/input/input", + "2": "createnuclear:block/reactor/casing/casing_top", "particle": "createnuclear:block/reactor/casing/reactor_casing" }, "elements": [ diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/item.json b/src/main/resources/assets/createnuclear/models/block/reactor/input/item.json similarity index 95% rename from src/main/resources/assets/createnuclear/models/block/reactor/rod_input/item.json rename to src/main/resources/assets/createnuclear/models/block/reactor/input/item.json index 44a5bfd39..7cb6aabcc 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/item.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/input/item.json @@ -3,8 +3,8 @@ "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/casing/reactor_casing", - "1": "createnuclear:block/reactor/rod_input/rod_input", - "2": "createnuclear:block/reactor/casing/reactor_casing", + "1": "createnuclear:block/reactor/input/input", + "2": "createnuclear:block/reactor/casing/casing_top", "particle": "createnuclear:block/reactor/casing/reactor_casing" }, "elements": [ diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/output/item.json b/src/main/resources/assets/createnuclear/models/block/reactor/output/item.json index e6357ae45..3b55684f2 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/output/item.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/output/item.json @@ -3,7 +3,7 @@ "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/output/output", - "1": "createnuclear:block/reactor/casing/reactor_casing", + "1": "createnuclear:block/reactor/casing/casing_top", "2": "createnuclear:block/reactor/casing/reactor_casing", "1_1": "create:block/axis_top", "1_0": "create:block/axis" diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/output/output.json b/src/main/resources/assets/createnuclear/models/block/reactor/output/output.json index 76cd34b4f..afeb503ad 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/output/output.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/output/output.json @@ -3,7 +3,7 @@ "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/output/output", - "1": "createnuclear:block/reactor/casing/reactor_casing", + "1": "createnuclear:block/reactor/casing/casing_top", "2": "createnuclear:block/reactor/casing/reactor_casing", "particle": "createnuclear:block/reactor/output/output" }, diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/output/output_vertical.json b/src/main/resources/assets/createnuclear/models/block/reactor/output/output_vertical.json index 8cf59b370..03ad747fa 100644 --- a/src/main/resources/assets/createnuclear/models/block/reactor/output/output_vertical.json +++ b/src/main/resources/assets/createnuclear/models/block/reactor/output/output_vertical.json @@ -3,7 +3,7 @@ "parent": "block/block", "textures": { "0": "createnuclear:block/reactor/output/output", - "1": "createnuclear:block/reactor/casing/reactor_casing", + "1": "createnuclear:block/reactor/casing/casing_top", "2": "createnuclear:block/reactor/casing/reactor_casing", "particle": "createnuclear:block/reactor/output/output" }, diff --git a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input_vertical.json b/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input_vertical.json deleted file mode 100644 index 754f8f595..000000000 --- a/src/main/resources/assets/createnuclear/models/block/reactor/rod_input/rod_input_vertical.json +++ /dev/null @@ -1,249 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "textures": { - "0": "createnuclear:block/reactor/rod_input/rod_input", - "1": "createnuclear:block/reactor/casing/reactor_casing", - "2": "createnuclear:block/reactor/casing/reactor_casing", - "particle": "createnuclear:block/reactor/rod_input/rod_input" - }, - "elements": [ - { - "from": [0, 0, 0], - "to": [16, 14, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#1"}, - "east": {"uv": [0, 0, 14, 16], "rotation": 270, "texture": "#2"}, - "south": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#1"}, - "west": {"uv": [2, 0, 16, 16], "rotation": 90, "texture": "#2"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#2"} - } - }, - { - "from": [12, 14, 0], - "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 12, 2, 16], "rotation": 90, "texture": "#1"}, - "east": {"uv": [14, 0, 16, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 0, 2, 4], "rotation": 90, "texture": "#1"}, - "west": {"uv": [3, 0, 5, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [0, 0, 4, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [12, 0, 16, 16], "texture": "#0"} - } - }, - { - "from": [0, 14, 0], - "to": [4, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 0, 2, 4], "rotation": 90, "texture": "#1"}, - "east": {"uv": [11, 0, 13, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 12, 2, 16], "rotation": 90, "texture": "#1"}, - "west": {"uv": [0, 0, 2, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [12, 0, 16, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 0, 4, 16], "texture": "#0"} - } - }, - { - "from": [4, 14, 0], - "to": [5, 16, 7], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 4, 2, 5], "rotation": 90, "texture": "#1"}, - "east": {"uv": [10, 9, 12, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [4, 9, 6, 10], "rotation": 90, "texture": "#0"}, - "west": {"uv": [10, 9, 12, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [11, 9, 12, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [11, 9, 12, 16], "texture": "#0"} - } - }, - { - "from": [11, 14, 0], - "to": [12, 16, 7], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 11, 2, 12], "rotation": 90, "texture": "#1"}, - "east": {"uv": [4, 9, 6, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [4, 9, 6, 10], "rotation": 90, "texture": "#0"}, - "west": {"uv": [4, 9, 6, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [4, 9, 5, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [4, 9, 5, 16], "texture": "#0"} - } - }, - { - "from": [11, 14, 9], - "to": [12, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [4, 6, 6, 7], "rotation": 90, "texture": "#0"}, - "east": {"uv": [4, 0, 6, 7], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 11, 2, 12], "rotation": 90, "texture": "#1"}, - "west": {"uv": [4, 0, 6, 7], "rotation": 90, "texture": "#0"}, - "up": {"uv": [4, 0, 5, 7], "rotation": 180, "texture": "#0"}, - "down": {"uv": [4, 0, 5, 7], "texture": "#0"} - } - }, - { - "from": [4, 14, 9], - "to": [5, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [4, 6, 6, 7], "rotation": 90, "texture": "#0"}, - "east": {"uv": [10, 0, 12, 7], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 4, 2, 5], "rotation": 90, "texture": "#1"}, - "west": {"uv": [10, 0, 12, 7], "rotation": 90, "texture": "#0"}, - "up": {"uv": [11, 0, 12, 7], "rotation": 180, "texture": "#0"}, - "down": {"uv": [11, 0, 12, 7], "texture": "#0"} - } - }, - { - "from": [5, 14, 10], - "to": [6, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [5, 5, 7, 6], "rotation": 90, "texture": "#0"}, - "east": {"uv": [9, 0, 11, 6], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 6, 2, 7], "rotation": 90, "texture": "#1"}, - "west": {"uv": [9, 0, 11, 6], "rotation": 90, "texture": "#0"}, - "up": {"uv": [10, 0, 11, 6], "rotation": 180, "texture": "#0"}, - "down": {"uv": [10, 0, 11, 6], "texture": "#0"} - } - }, - { - "from": [10, 14, 10], - "to": [11, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [5, 5, 7, 6], "rotation": 90, "texture": "#0"}, - "east": {"uv": [5, 0, 7, 6], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 10, 2, 11], "rotation": 90, "texture": "#1"}, - "west": {"uv": [5, 0, 7, 6], "rotation": 90, "texture": "#0"}, - "up": {"uv": [5, 0, 6, 6], "rotation": 180, "texture": "#0"}, - "down": {"uv": [5, 0, 6, 6], "texture": "#0"} - } - }, - { - "from": [10, 14, 0], - "to": [11, 16, 6], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 10, 2, 11], "rotation": 90, "texture": "#1"}, - "east": {"uv": [5, 10, 7, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [5, 10, 7, 11], "rotation": 90, "texture": "#0"}, - "west": {"uv": [5, 10, 7, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [5, 10, 6, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [5, 10, 6, 16], "texture": "#0"} - } - }, - { - "from": [9, 14, 0], - "to": [10, 16, 5], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 9, 2, 10], "rotation": 90, "texture": "#1"}, - "east": {"uv": [6, 11, 8, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [6, 11, 8, 12], "rotation": 90, "texture": "#0"}, - "west": {"uv": [6, 11, 8, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [6, 11, 7, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [6, 11, 7, 16], "texture": "#0"} - } - }, - { - "from": [6, 14, 0], - "to": [7, 16, 5], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 6, 2, 7], "rotation": 90, "texture": "#1"}, - "east": {"uv": [8, 11, 10, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [6, 11, 8, 12], "rotation": 90, "texture": "#0"}, - "west": {"uv": [8, 11, 10, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [9, 11, 10, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [9, 11, 10, 16], "texture": "#0"} - } - }, - { - "from": [6, 14, 11], - "to": [7, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [6, 4, 8, 5], "rotation": 90, "texture": "#0"}, - "east": {"uv": [8, 0, 10, 5], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 7, 2, 8], "rotation": 90, "texture": "#1"}, - "west": {"uv": [8, 0, 10, 5], "rotation": 90, "texture": "#0"}, - "up": {"uv": [9, 0, 10, 5], "rotation": 180, "texture": "#0"}, - "down": {"uv": [9, 0, 10, 5], "texture": "#0"} - } - }, - { - "from": [9, 14, 11], - "to": [10, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [6, 4, 8, 5], "rotation": 90, "texture": "#0"}, - "east": {"uv": [6, 0, 8, 5], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 9, 2, 10], "rotation": 90, "texture": "#1"}, - "west": {"uv": [6, 0, 8, 5], "rotation": 90, "texture": "#0"}, - "up": {"uv": [6, 0, 7, 5], "rotation": 180, "texture": "#0"}, - "down": {"uv": [6, 0, 7, 5], "texture": "#0"} - } - }, - { - "from": [7, 14, 12], - "to": [9, 16, 16], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [3, 7, 5, 9], "rotation": 90, "texture": "#0"}, - "east": {"uv": [7, 0, 9, 4], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 7, 2, 9], "rotation": 90, "texture": "#1"}, - "west": {"uv": [7, 0, 9, 4], "rotation": 90, "texture": "#0"}, - "up": {"uv": [7, 0, 9, 4], "rotation": 180, "texture": "#0"}, - "down": {"uv": [7, 0, 9, 4], "texture": "#0"} - } - }, - { - "from": [7, 14, 0], - "to": [9, 16, 4], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 7, 2, 9], "rotation": 90, "texture": "#1"}, - "east": {"uv": [7, 12, 9, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [3, 7, 5, 9], "rotation": 90, "texture": "#0"}, - "west": {"uv": [7, 12, 9, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [7, 12, 9, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [7, 12, 9, 16], "texture": "#0"} - } - }, - { - "from": [5, 14, 0], - "to": [6, 16, 6], - "rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 5]}, - "faces": { - "north": {"uv": [0, 5, 2, 6], "rotation": 90, "texture": "#1"}, - "east": {"uv": [9, 10, 11, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [5, 10, 7, 11], "rotation": 90, "texture": "#0"}, - "west": {"uv": [9, 10, 11, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [10, 10, 11, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [10, 10, 11, 16], "texture": "#0"} - } - } - ], - "groups": [ - { - "name": "group", - "origin": [0, 0, 0], - "color": 0, - "children": [ - 0, - { - "name": "face", - "origin": [8, 8, 8], - "color": 0, - "children": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_boots/item.json b/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_boots/item.json deleted file mode 100644 index 1e2ba9844..000000000 --- a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_boots/item.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "format_version": "1.21.11", - "credit": "Made with Blockbench", - "textures": { - "14": "createnuclear:item/default_anti_radiation_suit" - }, - "elements": [ - { - "name": "power_boot", - "from": [7.45, 0.2, 6.45], - "to": [11.95, 4.7, 10.95], - "rotation": {"angle": 0, "axis": "y", "origin": [7.8633, 12.0833, 9.7667]}, - "faces": { - "north": {"uv": [11.5, 7.16667, 10.83333, 7.83333], "texture": "#14"}, - "east": {"uv": [12.16667, 7.16667, 11.5, 7.83333], "texture": "#14"}, - "south": {"uv": [12.83333, 7.16667, 12.16667, 7.83333], "texture": "#14"}, - "west": {"uv": [10.83333, 7.16667, 10.16667, 7.83333], "texture": "#14"}, - "up": {"uv": [10.83333, 7.16667, 11.5, 6.5], "texture": "#14"}, - "down": {"uv": [11.5, 6.5, 12.16667, 7.16667], "texture": "#14"} - } - }, - { - "name": "power_boot", - "from": [3.55, 0.2, 6.45], - "to": [8.05, 4.7, 10.95], - "rotation": {"angle": 0, "axis": "y", "origin": [4, 7.75, 10]}, - "faces": { - "north": {"uv": [10.83333, 7.16667, 11.5, 7.83333], "texture": "#14"}, - "east": {"uv": [10.16667, 7.16667, 10.83333, 7.83333], "texture": "#14"}, - "south": {"uv": [12.16667, 7.16667, 12.83333, 7.83333], "texture": "#14"}, - "west": {"uv": [11.5, 7.16667, 12.16667, 7.83333], "texture": "#14"}, - "up": {"uv": [11.5, 7.16667, 10.83333, 6.5], "texture": "#14"}, - "down": {"uv": [12.16667, 6.5, 11.5, 7.16667], "texture": "#14"} - } - } - ], - "display": { - "thirdperson_righthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "thirdperson_lefthand": { - "rotation": [95, 0, 0], - "translation": [0, 0.5, 2.75], - "scale": [0.5, 0.5, 0.5] - }, - "firstperson_righthand": { - "rotation": [-180, 32.75, -180], - "translation": [0, 3.5, 0], - "scale": [0.5, 0.5, 0.5] - }, - "firstperson_lefthand": { - "rotation": [-180, 32.75, -180], - "translation": [0, 3.5, 0], - "scale": [0.5, 0.5, 0.5] - }, - "ground": { - "translation": [0, 2.25, 0], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [-146, 45, -180], - "translation": [-0.5, 3, 2] - }, - "head": { - "translation": [0, -37.25, -4], - "scale": [0.5, 0.5, 0.5] - }, - "on_shelf": { - "rotation": [0, -180, 0] - } - }, - "groups": [ - { - "name": "black_anti_radiation_boots", - "origin": [8, 8, 8], - "scope": 0, - "color": 0, - "children": [ - { - "name": "right_leg", - "origin": [9.67, -2.43333, 8.76667], - "scope": 0, - "color": 0, - "children": [ - { - "name": "right_boot", - "origin": [9.7, -5.3, 8.7], - "scope": 0, - "color": 0, - "children": [0] - } - ] - }, - { - "name": "left_leg", - "origin": [5.78333, -2.43333, 8.76667], - "scope": 0, - "color": 0, - "children": [ - { - "name": "left_boot", - "origin": [5.8, -5.3, 8.7], - "scope": 0, - "color": 0, - "children": [1] - } - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate/item.json b/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate/item.json deleted file mode 100644 index 9fe686707..000000000 --- a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_chestplate/item.json +++ /dev/null @@ -1,184 +0,0 @@ -{ - "format_version": "1.21.11", - "credit": "Made with Blockbench", - "textures": { - "14": "createnuclear:item/default_anti_radiation_suit" - }, - "elements": [ - { - "name": "power_chestplate_inner", - "from": [3.7, 0.75, 6.2], - "to": [11.7, 12.75, 11.2], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 17.75, 9]}, - "faces": { - "north": {"uv": [0.83333, 4, 2.16667, 6], "texture": "#14"}, - "east": {"uv": [0, 4, 0.83333, 6], "texture": "#14"}, - "south": {"uv": [3, 4, 4.33333, 6], "texture": "#14"}, - "west": {"uv": [2.16667, 4, 3, 6], "texture": "#14"}, - "up": {"uv": [2.16667, 4, 0.83333, 3.16667], "texture": "#14"}, - "down": {"uv": [3.5, 3.16667, 2.16667, 4], "texture": "#14"} - } - }, - { - "name": "power_chestplate_outer", - "from": [3.4, 0.75, 5.9], - "to": [12.4, 13.75, 11.9], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 17.75, 9]}, - "faces": { - "north": {"uv": [1, 1, 2.5, 3.16667], "texture": "#14"}, - "east": {"uv": [0, 1, 1, 3.16667], "texture": "#14"}, - "south": {"uv": [3.5, 1, 5, 3.16667], "texture": "#14"}, - "west": {"uv": [2.5, 1, 3.5, 3.16667], "texture": "#14"}, - "up": {"uv": [2.5, 1, 1, 0], "texture": "#14"}, - "down": {"uv": [4, 0, 2.5, 1], "texture": "#14"} - } - }, - { - "name": "power_pants_inner", - "from": [3.7, 0.75, 6.3], - "to": [11.7, 12.75, 11.3], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 17.75, 9]}, - "faces": { - "north": {"uv": [0.83333, 6.83333, 2.16667, 8.83333], "texture": "#14"}, - "east": {"uv": [0, 6.83333, 0.83333, 8.83333], "texture": "#14"}, - "south": {"uv": [3, 6.83333, 4.33333, 8.83333], "texture": "#14"}, - "west": {"uv": [2.16667, 6.83333, 3, 8.83333], "texture": "#14"}, - "up": {"uv": [2.16667, 6.83333, 0.83333, 6], "texture": "#14"}, - "down": {"uv": [3.5, 6, 2.16667, 6.83333], "texture": "#14"} - } - }, - { - "name": "power_pants_outer", - "from": [3.5, 0.75, 6], - "to": [12.5, 13.75, 12], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 17.75, 9]}, - "faces": { - "north": {"uv": [11.66667, 1, 13.16667, 3.16667], "texture": "#14"}, - "east": {"uv": [10.66667, 1, 11.66667, 3.16667], "texture": "#14"}, - "south": {"uv": [14.16667, 1, 15.66667, 3.16667], "texture": "#14"}, - "west": {"uv": [13.16667, 1, 14.16667, 3.16667], "texture": "#14"}, - "up": {"uv": [13.16667, 1, 11.66667, 0], "texture": "#14"}, - "down": {"uv": [14.66667, 0, 13.16667, 1], "texture": "#14"} - } - }, - { - "name": "power_right_arm_inner", - "from": [11.45, 0.3, 6.25], - "to": [16.35, 13.2, 11.15], - "rotation": {"angle": 0, "axis": "y", "origin": [13.9, 6.75, 8.7]}, - "faces": { - "north": {"uv": [8.83333, 6, 8.16667, 8], "texture": "#14"}, - "east": {"uv": [9.5, 6, 8.83333, 8], "texture": "#14"}, - "south": {"uv": [10.16667, 6, 9.5, 8], "texture": "#14"}, - "west": {"uv": [8.16667, 6, 7.5, 8], "texture": "#14"}, - "up": {"uv": [8.16667, 6, 8.83333, 5.33333], "texture": "#14"}, - "down": {"uv": [8.83333, 5.33333, 9.5, 6], "texture": "#14"} - } - }, - { - "name": "power_right_arm_outer", - "from": [11.35, 0.2, 6.15], - "to": [16.45, 13.3, 11.25], - "rotation": {"angle": 0, "axis": "y", "origin": [13.9, 6.75, 8.7]}, - "faces": { - "north": {"uv": [6.16667, 6, 5.5, 8], "texture": "#14"}, - "east": {"uv": [6.83333, 6, 6.16667, 8], "texture": "#14"}, - "south": {"uv": [7.5, 6, 6.83333, 8], "texture": "#14"}, - "west": {"uv": [5.5, 6, 4.83333, 8], "texture": "#14"}, - "up": {"uv": [5.5, 6, 6.16667, 5.33333], "texture": "#14"}, - "down": {"uv": [6.16667, 5.33333, 6.83333, 6], "texture": "#14"} - } - }, - { - "name": "power_left_arm_inner", - "from": [-0.7, 0.35, 6.3], - "to": [4.1, 13.15, 11.1], - "rotation": {"angle": 0, "axis": "y", "origin": [1.7, 6.75, 8.7]}, - "faces": { - "north": {"uv": [8.16667, 6, 8.83333, 8], "texture": "#14"}, - "east": {"uv": [7.5, 6, 8.16667, 8], "texture": "#14"}, - "south": {"uv": [9.5, 6, 10.16667, 8], "texture": "#14"}, - "west": {"uv": [8.83333, 6, 9.5, 8], "texture": "#14"}, - "up": {"uv": [8.83333, 6, 8.16667, 5.33333], "texture": "#14"}, - "down": {"uv": [9.5, 5.33333, 8.83333, 6], "texture": "#14"} - } - }, - { - "name": "power_left_arm_outer", - "from": [-0.8, 0.25, 6.2], - "to": [4.2, 13.25, 11.2], - "rotation": {"angle": 0, "axis": "y", "origin": [1.7, 6.75, 8.7]}, - "faces": { - "north": {"uv": [5.5, 6, 6.16667, 8], "texture": "#14"}, - "east": {"uv": [4.83333, 6, 5.5, 8], "texture": "#14"}, - "south": {"uv": [6.83333, 6, 7.5, 8], "texture": "#14"}, - "west": {"uv": [6.16667, 6, 6.83333, 8], "texture": "#14"}, - "up": {"uv": [6.16667, 6, 5.5, 5.33333], "texture": "#14"}, - "down": {"uv": [6.83333, 5.33333, 6.16667, 6], "texture": "#14"} - } - } - ], - "display": { - "thirdperson_righthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "thirdperson_lefthand": { - "rotation": [95.07, -88.51, 4.51], - "translation": [0.5, -2, -1.75], - "scale": [0.5, 0.5, 0.5] - }, - "firstperson_righthand": { - "scale": [0.5, 0.5, 0.5] - }, - "firstperson_lefthand": { - "scale": [0.5, 0.5, 0.5] - }, - "ground": { - "translation": [0, 2, 0], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [-152.1, 49.9, 178.86], - "translation": [-0.25, 0, 0], - "scale": [0.5, 0.5, 0.5] - }, - "head": { - "translation": [0, -12, -1.25] - }, - "fixed": { - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "black_anti_radiation_chestplate", - "origin": [8, 8, 8], - "scope": 0, - "color": 0, - "children": [ - { - "name": "body", - "origin": [7.825, 18.25, 8.85], - "scope": 0, - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "right_arm", - "origin": [13.8, 19.5, 8.8], - "scope": 0, - "color": 0, - "children": [4, 5] - }, - { - "name": "left_arm", - "origin": [1.8, 19.5, 8.8], - "scope": 0, - "color": 0, - "children": [6, 7] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_helmet/item.json b/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_helmet/item.json deleted file mode 100644 index 730206825..000000000 --- a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_helmet/item.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "format_version": "1.21.11", - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [96, 96], - "textures": { - "particle": "createnuclear:item/default_anti_radiation_suit", - "layer0": "createnuclear:item/default_anti_radiation_suit" - }, - "elements": [ - { - "name": "power_helmet_inner", - "from": [3.8, 0.6, 4.8], - "to": [12.2, 9, 13.2], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 4.65, 9]}, - "faces": { - "north": {"uv": [6.33333, 1.33333, 7.66667, 2.66667], "texture": "#layer0"}, - "east": {"uv": [5, 1.33333, 6.33333, 2.66667], "texture": "#layer0"}, - "south": {"uv": [9, 1.33333, 10.33333, 2.66667], "texture": "#layer0"}, - "west": {"uv": [7.66667, 1.33333, 9, 2.66667], "texture": "#layer0"}, - "up": {"uv": [7.66667, 1.33333, 6.33333, 0], "texture": "#layer0"}, - "down": {"uv": [9, 0, 7.66667, 1.33333], "texture": "#layer0"} - } - }, - { - "name": "power_helm_outer", - "from": [3.5, 0, 4.5], - "to": [12.5, 9, 13.5], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 4.65, 9]}, - "faces": { - "north": {"uv": [6.33333, 4, 7.66667, 5.33333], "texture": "#layer0"}, - "east": {"uv": [5, 4, 6.33333, 5.33333], "texture": "#layer0"}, - "south": {"uv": [9, 4, 10.33333, 5.33333], "texture": "#layer0"}, - "west": {"uv": [7.66667, 4, 9, 5.33333], "texture": "#layer0"}, - "up": {"uv": [7.66667, 4, 6.33333, 2.66667], "texture": "#layer0"}, - "down": {"uv": [9, 2.66667, 7.66667, 4], "texture": "#layer0"} - } - } - ], - "display": { - "thirdperson_righthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "thirdperson_lefthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "firstperson_righthand": { - "rotation": [0, -90, 25], - "translation": [1.13, 3.2, 1.13], - "scale": [0.68, 0.68, 0.68] - }, - "firstperson_lefthand": { - "rotation": [0, -90, 25], - "translation": [1.13, 3.2, 1.13], - "scale": [0.68, 0.68, 0.68] - }, - "ground": { - "translation": [0, 2, 0], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [30, 135, 0], - "scale": [0.625, 0.625, 0.625] - }, - "head": { - "rotation": [0, -180, 0], - "translation": [0, 13, 7] - }, - "fixed": { - "translation": [0, 3.5, 0] - }, - "on_shelf": { - "rotation": [0, -180, 0] - } - }, - "groups": [ - { - "name": "black_anti_radiation_helmet", - "origin": [8, 8, 8], - "scope": 0, - "color": 0, - "children": [ - { - "name": "head", - "origin": [8, 36, 9], - "scope": 0, - "color": 0, - "children": [0, 1] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_leggings/item.json b/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_leggings/item.json deleted file mode 100644 index a60dc9d49..000000000 --- a/src/main/resources/assets/createnuclear/models/item/default_anti_radiation_leggings/item.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "format_version": "1.21.11", - "credit": "Made with Blockbench", - "textures": { - "14": "createnuclear:item/default_anti_radiation_suit" - }, - "elements": [ - { - "name": "power_leg_inner", - "from": [7.71, -2, 6.9], - "to": [11.71, 10, 10.9], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 5, 9]}, - "faces": { - "north": {"uv": [6.16667, 8.66667, 5.5, 10.66667], "texture": "#14"}, - "east": {"uv": [6.83333, 8.66667, 6.16667, 10.66667], "texture": "#14"}, - "south": {"uv": [7.5, 8.66667, 6.83333, 10.66667], "texture": "#14"}, - "west": {"uv": [5.5, 8.66667, 4.83333, 10.66667], "texture": "#14"}, - "up": {"uv": [5.5, 8.66667, 6.16667, 8], "texture": "#14"}, - "down": {"uv": [6.16667, 8, 6.83333, 8.66667], "texture": "#14"} - } - }, - { - "name": "power_leg_outer", - "from": [7.35, -2.25, 6.45], - "to": [11.85, 10.25, 10.95], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 5, 9]}, - "faces": { - "north": {"uv": [8.83333, 8.66667, 8.16667, 10.66667], "texture": "#14"}, - "east": {"uv": [9.5, 8.66667, 8.83333, 10.66667], "texture": "#14"}, - "south": {"uv": [10.16667, 8.66667, 9.5, 10.66667], "texture": "#14"}, - "west": {"uv": [8.16667, 8.66667, 7.5, 10.66667], "texture": "#14"}, - "up": {"uv": [8.16667, 8.66667, 8.83333, 8], "texture": "#14"}, - "down": {"uv": [8.83333, 8, 9.5, 8.66667], "texture": "#14"} - } - }, - { - "name": "power_leg_inner", - "from": [3.75, -2, 6.9], - "to": [7.75, 10, 10.9], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 5, 9]}, - "faces": { - "north": {"uv": [5.5, 8.66667, 6.16667, 10.66667], "texture": "#14"}, - "east": {"uv": [4.83333, 8.66667, 5.5, 10.66667], "texture": "#14"}, - "south": {"uv": [6.83333, 8.66667, 7.5, 10.66667], "texture": "#14"}, - "west": {"uv": [6.16667, 8.66667, 6.83333, 10.66667], "texture": "#14"}, - "up": {"uv": [6.16667, 8.66667, 5.5, 8], "texture": "#14"}, - "down": {"uv": [6.83333, 8, 6.16667, 8.66667], "texture": "#14"} - } - }, - { - "name": "power_leg_outer", - "from": [3.55, -2.25, 6.45], - "to": [8.05, 10.25, 10.95], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 5, 9]}, - "faces": { - "north": {"uv": [8.16667, 8.66667, 8.83333, 10.66667], "texture": "#14"}, - "east": {"uv": [7.5, 8.66667, 8.16667, 10.66667], "texture": "#14"}, - "south": {"uv": [9.5, 8.66667, 10.16667, 10.66667], "texture": "#14"}, - "west": {"uv": [8.83333, 8.66667, 9.5, 10.66667], "texture": "#14"}, - "up": {"uv": [8.83333, 8.66667, 8.16667, 8], "texture": "#14"}, - "down": {"uv": [9.5, 8, 8.83333, 8.66667], "texture": "#14"} - } - } - ], - "display": { - "thirdperson_righthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "thirdperson_lefthand": { - "translation": [0, 3, 1], - "scale": [0.55, 0.55, 0.55] - }, - "firstperson_righthand": { - "rotation": [0, -90, 25], - "translation": [1.13, 3.2, 1.13], - "scale": [0.68, 0.68, 0.68] - }, - "firstperson_lefthand": { - "rotation": [0, -90, 25], - "translation": [1.13, 3.2, 1.13], - "scale": [0.68, 0.68, 0.68] - }, - "ground": { - "translation": [0, 2, 0], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [-151.96, 54.21, 174.44], - "translation": [-0.75, 1.75, 0], - "scale": [0.8, 0.8, 0.8] - }, - "head": { - "rotation": [0, -180, 0], - "translation": [0, 13, 7] - }, - "fixed": { - "rotation": [0, -180, 0] - }, - "on_shelf": { - "rotation": [0, -180, 0] - } - }, - "groups": [ - { - "name": "black_anti_radiation_leggings", - "origin": [8, 8, 8], - "scope": 0, - "color": 0, - "children": [ - { - "name": "right_leg", - "origin": [9.67, -2.43333, 8.76667], - "scope": 0, - "color": 0, - "children": [0, 1] - }, - { - "name": "left_leg", - "origin": [5.78333, -2.43333, 8.76667], - "scope": 0, - "color": 0, - "children": [2, 3] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/particles/irradiated_particles.json b/src/main/resources/assets/createnuclear/particles/irradiated_particles.json deleted file mode 100644 index 4c09429a7..000000000 --- a/src/main/resources/assets/createnuclear/particles/irradiated_particles.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": [ - "createnuclear:irradiated_particles" - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud.json b/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud.json deleted file mode 100644 index 6e3e151a5..000000000 --- a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "textures": [ - "minecraft:explosion_0", - "minecraft:explosion_1", - "minecraft:explosion_2", - "minecraft:explosion_3", - "minecraft:explosion_4", - "minecraft:explosion_5", - "minecraft:explosion_6", - "minecraft:explosion_7", - "minecraft:explosion_8", - "minecraft:explosion_9", - "minecraft:explosion_10", - "minecraft:explosion_11", - "minecraft:explosion_12", - "minecraft:explosion_13", - "minecraft:explosion_14", - "minecraft:explosion_15" - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_explosion.json b/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_explosion.json deleted file mode 100644 index 6e3e151a5..000000000 --- a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_explosion.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "textures": [ - "minecraft:explosion_0", - "minecraft:explosion_1", - "minecraft:explosion_2", - "minecraft:explosion_3", - "minecraft:explosion_4", - "minecraft:explosion_5", - "minecraft:explosion_6", - "minecraft:explosion_7", - "minecraft:explosion_8", - "minecraft:explosion_9", - "minecraft:explosion_10", - "minecraft:explosion_11", - "minecraft:explosion_12", - "minecraft:explosion_13", - "minecraft:explosion_14", - "minecraft:explosion_15" - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_smoke.json b/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_smoke.json deleted file mode 100644 index 271261099..000000000 --- a/src/main/resources/assets/createnuclear/particles/nuclear_mushroom_cloud_smoke.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "textures": [ - "minecraft:generic_7", - "minecraft:generic_6", - "minecraft:generic_5", - "minecraft:generic_4", - "minecraft:generic_3", - "minecraft:generic_2", - "minecraft:generic_1", - "minecraft:generic_0" - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t1_ponder.nbt b/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t1_ponder.nbt deleted file mode 100644 index 44cd6ae659d2f5edfc57ae2b227f583f5d361240..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1442 zcmZ{a3sBMr9LN8FugI_rT^3=cIc50F_jIPFt&Aem%g2y>Pa{ecL!3yiqy(2~3d>jM zse!Ld(@HJOptF3`)SQvZm5DEu@||GQcH6D)cK5yC_w)Pwe)>!e4I6!z81N@jL`Yct z84^C;3V-$tF+74~P7I9)T7twxvDao?Y(j#m6ROBQ;IE!dx96r)pTtzDx`(DpH#7*ff-5EMjGxes;`w1J`4|NY+_8OJpOqHb6dmFxdGM!Ax#lZ*9R&51y{f{gyac? z_Q8cY(@BmRv04>#ZSr2HL2|PB+pM$?b9SIlg>`P}rJ$#dxdVh;({-{_uF}dV z;!~K&9Ac+?>xH3R0=wtxFX+rG$?oWLM!Dcx__ikSvID>*uvZE*WV||nvVqP9Y_CC@ zr|1~~Ez^I65`DBlRp1RYs|Y6Hx&wAI$0-4T#YRcQ`R#%0O-AK{Y4B}qa4iBWB}gY# zbfG7?z(3=>$f=YJm6QU(pU1SoD`{d1XhzW4keD%;{14C$kYZQuk>~=5oCE~J1e4xq zV=sOlC$BR9_o6b)kNp*W@yPU1&yQi-Cr7D)^%3O$U#G@yWK9#!xX(xOhOSL?9&6s9 zqslGb8U=)uqfyuPdA>40}A?EdTL3rX@JnHi-f1Nz zro9y$ltbntTC6DQj=xt<84HEc^E+(K=V4ecqrn_=-N zR4wObgsPo{@HHPb6+i#BegQC-RNRc3v~8C>w^>op%3nNFA%{bhnP3` zQGyynj`v8#FO&_zf~g<07duxu{TipcAQ>Vj-MBc5VRld(d$xFBw5fes%AGh-%aiiX zl8QPKddFLz$#VLI^=}Irq66k>q4iVgweORb_hl6m5)5U6bRlkrVFwE!#pV*lpR5ga zab&f8S^2^gI=a61pup!_kavL!nyihTFuKuua33$5zNSj2Un9F^(V^A77mIwpp&i04 znck7+yqY~EODtVzF8MNsU#|aN%NLs0Q@BXwr&9jTL}JbQ{=d~_T}U08`1j^(Brd@)V~DJDodN8J!ab3++lb%Lg1Lp6Rd9yWUV)vHyPe OD1O+*B1ZW=0Q?1jZqP;m diff --git a/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t2_ponder.nbt b/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t2_ponder.nbt deleted file mode 100644 index d3b8229d22864f49357486df1cd3f8b4739081dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2346 zcmb7DdpHw%AK%4gE=fmniBQjxl##Z~{mz@3M&*|1LR+4b`$jG^w-65Es1|LgV=gD1 z_Rh4Om?x)5IxfRuR;ZKAE!iw)IkLQZAI|f<@AG_~@8|P;zTeOH_x}xBX$FsM^-``E9}cr@NJTCD9zS#Q4~! zkKoioIJE$-s=OB*A(dHSrv)BGC|3d^K$$0wx7;c%R~W*Opj>3F`F+b@qIUW2VQEVDsXutSx34uKOhxqF*+9_S19h#H$KF=h z*~qhflS@=7RFKG&{8DDJolr8Rx^S#_AUQ#cLIs;!qR_JQrvSwYtVrzSvqHG(!>9Uv zR*3<_FfcJ6h-@Y32N9Z=%DsbwkTRnN4`kZ@@2&5hfqnknQb3qJ0I6)JBGoAcRNpRP z7_ejPx;}&~2g0NPh`I!Q2#YLXvK+?d#y5#|DGjp+B2jiK+dHKsl3>4PbtXVBrGSWJ zg1!M+P9Bp2QZ$q>k?=0+$a-QuY+|RP*eL~uH3N`er8?}ZwR)O5SxyF%0wkU#=&Q5H z5|*5{o>&jd!kU4|a61*PPAQ2b*socur-6yX1bqZqP6?9&RU{rOZ7*6VDb410i( zsF6>7yqi>IVVR!?#^Q9*vb;%FqdY6pygjn?Bkw|>C+%jX?GSG2!zbPdZs0KY#*?H_ z5mq=-KLGWLK^L8yAAK>{+hqzTqAK>mi5?Z^aKAFAcD7R625bw-fY2P%2K5}Kl*@3L zC`%`bb~#(gBP7Fs=2$eS=QgE$50~j_*+S7i&sI7ZlA%s>%o)^knNqI6WuCBXsnQ;0 zD@BB4AZU&ygL>{$`3{?b_d;CQ@7m7BxaGcMV}9HJ{92r|c`0YcrTiBr?rr192{-X` zpTn9Hw7Pmj-hPZ%M~=^-ioO?B@F+uYI`MRwp~qL;N$0(IOkH1PWqZ>`p~+U~@~?wd zeC#!0O%knUB$*U>eP)O4%uGw(-5Jq5KE7nyJieu8sa@5Aly#?|Y85MDRUh;^gbW;_ z)zt6YRhmS<#96@S7>)PzQ~B*-SB>c++0Tu)wkn_t_tokwmZiFSB8;N_zrT4a1okZ) z;F@Kcxu{$hip!pp6$Q)8E=U(94Fi+-%DFC?U;J&n-?LE0?rA&?2Z3T)+*OpdBjrxn z$v;rlXoKEEMLZ2RLC!e!L*-moadwi;fp@MG`Hj9}l;>}!mA2x0hUnvJ!t7J=95`vw zm?J{k`dmxIHsO5)7i>O89v7$%);Z~TROjXNT6EuTvbGV5@0aI=J~`i)|oT^dTAM>=BNjKGBL3sD%^ui@$H4H8M-WGR6{TtQw77y764I_DW&Sv9PTQ zO@4>Ddas{Nen#M+-ih=8rS$gWZCW^MtJ$fMf|!n}=>y}q2Gl~MJL6B)HwULVWAm4H za3d<2g}r7m=+{fU;N@5TBTwA;(f8sQpN;E`Z*zTj%HjMTntA&cdK#UnD!za6sCV_f z{k`3}A>%Hz=n6lEhY^=j9Lj!et1&A)?(*-86@F9?5~^KYP+Pyjlm*yS0QT>n;FSE+(H4v$F8RPHXmiS$FAtaYiZ|*Qf@g>I_ojoHf3*0!XWmdo!20dcQJ%3K^JBWQv&PVMniv zw}ds}8!up(e#@WEE%&GO%rcvjTCqCum$Qh0YAL5 zDSd_T@`Q0N$1g_=ye#B%pF~|%n{fx{k$O4;iH!@coXctxy`9m^?#sa9l%Mx<;sAiZ E0T7%}Z~y=R diff --git a/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t3_ponder.nbt b/src/main/resources/assets/createnuclear/ponder/reactor/reactor_t3_ponder.nbt deleted file mode 100644 index 9676d99e7c61a319fc77b41f4109cef3c270af4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3700 zcmbuC3s6&69>#$n2ukQk1ylm7PHDjvQF)Y@D~h8b2W`q3+zGPA`p1dC)NV??bA8c{ShpfWLK10fE*nHGJNc74sz>&6_ znTm1d)jhpZ48Hr^6yo->^B)Dn9bf^^kV{ z*VpdQ4{o$;X8%Hays<7&Io2}V7f@a!`k*(s>a|5ZJ5aeZQ7#V-ovF*$Ju)4F6jI6} zf1@^-_!qOom?){eZ&!NB$G%O-05u9)708YSPaML1oJ-T=LRw;px{SOWualL=g8E!YjpA_#w?Rx)1$O7s zmcdW)#~cLuUc~LyNq(`@*SH~W zFRslEnN0Uioz-^p*s=-pA~uP?7t-uGr}wEA{4H$G@*MQ?eX7N^`-tkC$i zgEe6VKjkgpW0CKckm7Ti;r-rtT?GVczbFl55xwgCfYaVB-1tPtt?G%CPx}=sL%R^sEXMgOItTmssie> zAhigOgD;MC)>XiT3T{L9icuJPLv)O7;6a^1MqG4Rz=H|*dZP#Jwb|&`X$c2Hi^Jhh z*Bzxc2(XxH5A0Z!O@4o`&Cu)kGCumFiX!#PxIp|w@|fM7KBQrrYA@Qm<82QIYndOn zmlolnirdvqT!(oWOWQnBss^57LE8TdV&8Q-wME@nb7IoU)p%oe&lWeKtAbm*|BBgc zS(?VPwr8gg^`!jqQfCd9nt$KT49IcAShL&^ut6FTZ&YyGx`_zP#aNooNU17l^Jk&W zyXg|T^#S*r3CdvjtSE$YXQi=LfOz*x-hRBwD|z-(!@XT)*Ea7w#3}UuYdq_mNspbH zm{6A6s#YDiVt{gx7SSI|L(Z9M#MZxLuRmOx1|Nrh=`qBJl?rZk+p%ImG67!)6;Pua zHq&mR+Fvnmx20)jUSno!Epc?Ib8)Nr2 zJJ3zk#0*YZu6|O%hfCKVg(_&+(H2cJbQplWkI)TB#*Z z$xm)I-Ql%Y`aRi!C4HM;?g*WsN_O*P`b0{S72{}z0LHiT%blPzd6I`b*(oBW(2DUz zhQNFdw^1e5L<%o^jA!4rMZ~&1BEWKh0%Xa~jV&67E+QAgvcx2ms0`d;HV0 z9nt$=)EdXc*i8Le*h#Vt*PWW4^syZo6mL3Z%kN|xyZ;+Z)D{*j$VphRnx0dG z{ao$#(T(n&OmQ*)%=Gq7y_er=37=p69kh66z(Ab%PXBXA?7<`!|j9`K><K%F~y0pK@rI`}YJUo04;29Wi@O zke4fRCPZ?K^u$+vw@3z3rsqS8hVkK8(z76`8}kgOs0M$bfz(!*R8q^V26{_+dV7Zx z@SJjf5M#>whX514_|o%X$=R;tG!vkmWPjzy%<-tF6;IJ}Pl!N?(Z(0q^eU@n2Csz2 zFfPXtLvmvAKbOU2Dtkqp6h@sJ@j64<>%+UK3T*y z=*DaKY@vf)=)J5;*)_W~rez<`K;$X5v>+QApp%_Z^?Ar%*Tf)tT}3m&v)|Gp)G!V0 z;)pV(BK2Gowdi$Mn+Xp6mfOkcAD~^<{}<*G9K>_@)?&9qqSn2-t1yPUL*L=WMO^zW z%|g?^N4q$oO!JVbu8GI*)ls zU)PY(f|iE<3|VTPFZSO?zdAWNeJ|g2XNJ=^UztzOeC|faWAm<9-@X!4K$j_xNO&s~ zcOi&ZN!*1XUOjYSx?18c1o7&j3y0?Fq3ieup$kXxYKaR6v78}c^KBg~jLP|=^4=n! zf^d@0=zy*iQGEK*l_~j$6qkLz*TUs5fn$mmLOUz6&d>sHiY%9~;c>k)I5!anzrjQ8PY< zQaU&Ev8jgRFGT!sTo-c3^(>N2ZwtS1)Te+y&Q9D6Msc)$oAOVe@n>ew`g)S|3xyWs R*)2001fE~%P7732{sVvDPLu!u diff --git a/src/main/resources/assets/createnuclear/ponder/reactor/setup.nbt b/src/main/resources/assets/createnuclear/ponder/reactor/setup.nbt index 5e25912ea93d94fc2b3ea2933bcfb5438c3cf2ef..227cf19b50d159e0e22c21860a07f781fb510c96 100644 GIT binary patch literal 1370 zcmb2|=3oGW|7)Xt`)`{GEOkBiBUx}kyIhx9`@fcX#ku-BSy;u+nqD|{XN^Flk;*Q| z&-}mEYggLFO`qU)=Y?)Ug|4mbxii&LUQ_lOr)9^4*L}VwVZ3MC-)!?e`Dc$^U&yoc zeUIh)2komg_m%v;7yAFC+-yI-UH>ATV^1{imoaRMyqmDBViSwp>;sR5Dl{6~g)6Rc z+DNyin+6@8;cl>+Wu8vsakURSSmeAOJY<iC;YqhFiO(EvpBE;W$a7(%;{LAs zfKPtcM5$voO&4o4B+j;DrA)w<&*EoY{4>A+3pK%=fD6_UQjkZ;4{6h{=bpKF;?5M; zowqr8G$qs@YbJBHiSno(apwG3;Ph_hk<#Wu<(;=%e%%0~6?P_#iL5}G04JL{6ROKP zGuPSaEwsy10|whd7CFBTOW}1h_h=~UdtI0-bdKB0LjT#Lg)J2pir;-+t@!cb)xw#- z3Y=;!9`1S2@;OOQ&a0!{z4*Rlw0%qO$y0kPqqpq4A2+}2)bqEy|2YfJ`W8H~JoRto zl1ZyItmDq4EzIFNR1$wIWt<@vUlVUiDysmW3;;QAz!my8Lr9 zb-!~1?`JF=(R&eozHZIgM2w~m1_|VzsANQUsGP}bgbAPq&Y|nzy-S=iY+$`8U zXWh&5!a2UL)pz85zN6E}bNy~XmrzJxlh&yVKCQghD+^~CZOPlTtLgPrv0K`@Tf(C< z)*re0w(6Vn&4Rr_*T0nRH9A)ux&Fw{<^{;wv?1Cqb-kYYG3r&3SKkt! ze56uuwr0UUg%yifLZ>X~GBOEHJp9#b&N800vu!Moe?9eM<~NX^d*+|if9<|wSL|~K z4e52^uV(FA7k;c#@AXuRdI3-ndj+^k&RPi!6IH+9wrjaB6tXkc$2eC%m3n5Lc)0YQ z>6XurLN)}5>V&XzhaPkaEeH^m31MXqJ?IExa;#!<3{_ac#S+@M02Ieg|T_oa;V3J3d|Y_`1A(byolVuAjI!Kki#ytyZ&qnBH%Xs#9}s z{=I4DexJ|&)7yu~_wXM3RaI|WmK6AVqih*hhSvJeUT=RW)M$MFeQJ5H@hO9lrS;7$ zzjPc-cbi(_jh9ZpT+sRH?8cg{Jj1rf8U?Q_jK(T7yvKFsB8cL literal 1265 zcmb2|=HM`qx6NYuUz}P}TA-JgRKl=!wqyQnH-Xl0YwOKZdKhfK1Z=VWQvT#tToEUi z#97k?OG}-msIeAZUGS6r?{(Ew?J$u^Rcq%nI!?2wx^wsYM_%7x>F3wQ;E$2Yz;uc6%6fMSO~U) z42E_LLV}S``9LCzMGr%}-~$6D8MlVR90fo@?uNrm4>mAZ=rEu%o&SHakl#H2h3~(l zcSgaBxlJE#+22|_H!EkMTjNI!13Bhr@BANIt>zRi7Eh>UiICqJAwPHJ##SlTV~Y<| z@XXj>AXG;(45&00?_}B@Az6K`LibTloUU9K=r}PFp zwl)2X$6G<@b@G8h7C2yRWva5?hhw6>8iyD26}MBV;|e{FtE~>DiUF}4A>xOcxL2i16SpHef3?r zPxI@Gz*iTOL&SStH3h~Rtm1YnJ?Q^u>gOWUg{w3}d#^XzZe^~{I{)R0-u5>y`;D`5 zr>AW>_dIe>MarI%&sWwxSZVog<;mAj6!~&xq~?`1B3WTvrrNEuraGPVT9~#pU~^Ch zcHtEuVIB+=Gw-GU<*ZQSKc4#wUz?weUnzO-M|8}NwRZCBxz^9!ck<=J`d{zQZ(muu zQ|h&NYJ$SD;swh-%S?P`vVG?o|NnM(EN*YhoxAJ!-91$+W^H+U>i3^rYj#b&9Dmz+ z^6^at^&VfhF501A>=*m_&52jp?sBYkGoxpy^-nJg+FlsdD<5^|zQMwnx*4TE=d3>4 z{mDL{I(WgiWe#tB8*j~K+G@_4mCtqM-V!Y6bA@Ud*HR#wcU;?4d+MyIUT3|QrY#NH z9JDfW<&`xiSz%J9+P$-;x}Eh}oVGM@^Q9G$nMbe-gH^j_g@Mqky@nHK?SZ1Ie4i!H zDwf=n7G4>v81%lk^GbEH(${+u^SB#dH3h{6tm5`6bzG^Zag}xPt^{bDZtxVp_Sp2a z)zdl0*1xzXqPIs^e$wxMKPM&M-!lK6{Ql*y{i5qD?)`e1JoR$L(;|tJ3OfsD-``y} zf7eIvea=7kz1cMR%A0*PWzQCUt2NKF5j}hMb;Z)MD)nyxZ_7##eKTHZuiRqT8>U`3`qGwx0RS2tb#(v$ diff --git a/src/main/resources/assets/createnuclear/sounds/alarm/alarm.ogg b/src/main/resources/assets/createnuclear/sounds/alarm/alarm.ogg deleted file mode 100644 index 34b8230e985cdf327762ba60b63856adc219871b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 333303 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 z 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%0DukfBd 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�CP4)`7h=wner?fiw>M2 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©^aebyoATyYbD4x21)qJJOoJ< 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

  • n&d1C%2a7NHKISsm1 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¥(&dMOxi` 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

    $AN`6{nWz!_Z&d&iY7x6Zp+AzR2drac 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Ð%(J&Y|stLy|q)20oRd#CGu${W$DZ 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

    nuAWN-C*<^`oA+jn=ZE0rz< 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 z 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∈a<**4PqrTR=H{Gvz_(*3YX&jm4Mh{*j3}?i zmTE7Z^eUR`@$aViz#UA|a}HaYVF@p+vp(%h%|y--lxhvJ6^!7R{^^vA(AV{{sRUM}#$YL#6bmTRg+! zWbMI-Q)CjydkT@7sn03@jtD6z+3AHiC=sI}LTZcJ(iV`mC+Vx}w+fYdL=PH4OL`xd#CV?nx^xOJa zO2|BJ*yFT>BJD=Gmi)=P@@m`21_mZE%gE!BRX(vMmf8UEQNoQ`6a&_L$h<-=X?h zu5C%yH$#pE<`pe>kkiTr>qqm+W8o?dM7Aq}cfSi}xF|SZ{N!QqLI3{!4NCn-%kszy zIhHFKHj}tV-lA}#;(hjScPylIAO0Cf-~&^3sY<6Yc>q!d`rQ{3a3Z!kLdKWnjOF>X z=OV+v!{I{jg=iL)t8NjKtrIWI@p6j$)YATC)?>W=!J6((p004E643Qdno;z3otr%5 zUOZ@9;nLxo`*pu+KD}n92Dgm%Hx&CxUP~BVI_K2iB=dVCDQ!O>NCgB%x9G-ZHHC(_ zvb}#aga|q{aONx6In=4U)U6*u4K;hkyhXwm57>L?nse+v_riCie*l2oSojGz!(IsY z80r{j2C6<&lkUIz9B(r+E|OZQCIb;ntYSm(Lf5ElKJp7U=Y0M;`lP_tJ{H*4xptLV zI@8;@(8q3BJgoS#(AD7`8=&}VCM`gGpQOff<*K~dk#HGQ@)yc2DB4HVQ=cSLHW7DL z|Fq@zBXW5Af!c(5a>#b07x@@JP(4`|`{N_M)&p8NEFJcD11lUvxcK3&HMF8c=6O(X zsNVqZ+^2b$OUh5|?$UJKQ-uIreV1+1-e& zZVI66M;i^lwVkWyKJ5|G6>NQJgqv|)!XkDM8YMKeGS+v1_5SisHOijcls(l4a-bYu zlRPJ!YlpThz&;)c3~4b$vp*Q~y;bzgNf1C>1^#Z|<7)P1^HevwxtGj0O;QbsocVyg zZdqdwdw??!tf7Jc0F&rr=`n2o+5r@S2%r@SXFm+VR-{GY~zpU`z3)_*@fE--&&1Y7S@xy@BPh6iOGie5jB{tXzvKxFBY${X6QZ^ z=}{!lc9j2J4L)OajjTVevy^|OXKaE1cr)<~wpdvu&k2uTGW@R7HFPCu)IxnHd`+N)p3Q_srYH-XFF zHbza{9yft^jrW{PrxdO?V{UL|e8ptOzt3OPth+m2&QDX`$OCdi_oF!2oxpFkdojzG znRX)r1{pw$I3mBBvXteB7;^7yNoX+US#tOpc)Yk1mNAdv?E6|5N8#6fsGtd@|a6-Qj@# zQz;7zlk~*wFZGP~R13jRRneAc9gIi4Ep?-=H@m-QU+T>eB-r$5E5rsjrgKG|4Zniv zRV)4fxHQ$FqII6^^zH82Z8im^2^7b!*Z^4&mv#vh}X~H&E=PiOP)0rxM&)!Y} zKQSjrGmHPSF!A_TzwR}|?@2v(L8Aew<_|DwqtTZxlV!>V&vMH}hT7g@+E#)wjgXcv z@3xkE)_2>ODOlE=*4uN*XnRpRb2)faDOz49W}H%kE&9i&W9znKyDM8&-<~d+NDtgd zYOY}DYtd5`@@2Nu@2v~MkE&tOM0Yab0Zgum?xYlmx)@-Nk9R`KV>d||BQqt}WL2;L zKHJqV6i~u+Zx`MF;@{)?$be}5z4x40wbp!#^tglxY>k%Y2SPdcV$J#-uRPNzn3!gf zQdXl}Jnn`=SkL6{PZm4Sc?>&vK?`)IFgdjVEfhddu_ogGnERehW=nZ1EFRCB?NaVE zPG1$a@rNInZ^pT}$>@;Wiyu3jm1fQHOA4b^vRQ`7-savh)4=vF8w89?zi8Ns7R!?Lt22(6ozR zW-TPF{^>BtE{Mt}5;=70$UjFooWJ@sm7yW!TW)9WeeAj)-u;!+k-^lYt8#ZMV~ns@ z&g=FvM^S;6P5t{EX$>=J-+XP&M$+C7?im?9M{vhC(1__FQyjw29+2k(XtqPI7WguR zi6U3a;22X9Oh1KgeWM#3%4xQI&-z-2?Nhj?4R;!g+GpI&Xxa?1T4Z;@iF3SbDu^5q zA#w18HYRv0GWh_Rl8f&k_`-3q3I?lK5n5VHCXS5ydqBpYjdLZC178#q>K^*X4V1GQ zfCqXc`>G!xZ0MZip+)l#0uN$p_Uw$Plq~r*n=O#&es(;1ajx)|B+X=g`M~bf)vwgc8X>Cr7d)-x~ebuJJaABvXf0=5}yVzI@*0*uBOc zofnwIaF_X9BJ@RP9q5~`OZLtFol+a*ijCsnRX)a@6yiVTwVP|*S5deyTAe0=(>3;} z_||@rvv%q@d$le{-xgobFSK!^)F_es67(y5Y=fpP|F=;$*#upiZlDn5q*kQQ8T@Os zOjxX<8>hl0YTtn~aW`b#AJ8By!qP~+y{wLVSdiDs1#}ZqZp|xx_mSZlemsLA-UZEW zcZ>KxT|U)vfDeepSU?KKT}oA~G3mp`lV&1`4{g(T9n)W4>o@1}k-f5zx^uQ2w*agF zG6wUH7*Niz7#MwEcVYPMVWbM*T?=SH2hg~|M5So~1-d=`5+n`9ZeEY>Y8*@-dsnN* z*Np%uB+$~h{={YHO-{iO^9tc~VXYtoy8ng2K->{Ucdv&#zpKs&29v3&efUg4-npq$ z`Jvv)KtL-SI>1DTNEN0UdT<(mCF~xA#tPUGgT#yUmLt*p=e&opy!*4+0$1g?1OM^( z!Ueg$y=Jk{XaSyeqd=PO&R>NBo*rt`ILTdR57E za@pCb7}2403rIFsZX_aC#SW9<6Kf!jfnRwh%b0YuOhuu`t6tz^^xJgHVE#6XUBD#B z@{36q-rBrjO>2{|jL5v%y3m63nwbGJO8nn*79xl%w!+WY>3+sk8%^}?Y6 z>Xz|GwA}af4ni%Xg=W#aPfqN6h*_7!D2lrZUf|OC zPSIpe!hHsOGz9>*^8h=QSqL})cnkoYEUq|``M-WG$SL)Df!X&gflFm{YMwJhVIwB& z2s%KaK{Wow5bLw4Hi|XA+`7z(LfXpdMJDpu*bglne$vqbbOINrG>WO`v&pySOui0_r!i+RZ9hDXH!i(kJ6anr2^WFFE)}b!SJR{#I zL5`6}NDZU@gI4reEH>@&n}xir#!}!)%!EaC>+-hp(qnZySa50{5*~Y0cEv6#-!SS> z9p|`-d-Tm3Q_ar$AEVH2W0ttKfXMf46#nof^o=4~I%9k{k?x7dqon0(ADIUn)zlBT`0*_UJSSQv#u zzrMWF$oVd!5Xj?)5+RES_zlG59n}fV>5Ygp7z(FM);5OdMt&Jb4TjoyrTD}!LsbCdB+34vI77?VPD_8g|BzR>n52bzTG^@wWs)CX+*;>Vi+%vu`9 z3rNJsXVpJ|9e38>P)JC?zQ0CiNC*ORi8IM zgO#&?bQv3GGr%I3^J&zcYn|1f)w*3-=<2B7FHP~6nHOk5 zP6WbRvxj}uA9*%x7jQ7HvO4wr+ zwUo!m=|-J$m9`&1f7Y0h1viRqZzI=F<4iUs!e&ql5Y}wBZm?IrSa*zc*c=Owg|6vnj2`Y-@7u>|=kEV^W5@^YXY|7~GJd#P!Huq2Izu#A~@ zcx&v>mX!BeWwC9;JfdvEWaeUAhfJ^x_AxXKr%h$|q)JT|r2=z;y{F4dSL7lM9_!9Hs{l_m^SE`SU_UU>u zLg~Vt2+Hy(dV0Sl8TM}iZO#1K1cc;l%$gh53W<0v;S75DH(NIJM z=f2$VPv7NTwYR8U85%Z0BV0dP(BA3VU?h>qt6W((`V-HfgG#tb z;-*VFhKzG}Fe-qmSvwnMZysnmE{~Cngkx6%z`WCMlp>v%uPg%KpSL%I2)7FNwb`!$ z@5MFrjk1Aq3XIH0RzW9RZfrt98y~_`y{9)i*VP>xRD8%>x5)xk9GE`T+g!T^UW>$D z27(>FIbC;)=EQT=3Lx=Cln;lqb$H&4>fGQ$>s6YF8@Y`uzyS-W6JV+LWyBSrwK-L} z=o8RQ|1fycLs0`ZJ_Nx3S$h`2WhN;QPf7aqPkGBEGOzm2=OJ)_AsEWh^yhCSEy4u$ zDCz$08fD3WOCUs<7n}2rr>?6P4hv{yQw6YILy>#^V}^YOd{!cZ0I?$}M3w&o*z-0m zu%5IAureo9O|Iw;E_k_p8FD-s1i?@24mygr`;MHGgI z{YP7?|JH4c(0nTn9@SlP!x(#rwQ3h93cx%1X%P0k1Rs?8Ji!MPMctkG>RCTny4q#E z>Z!I-66zx>OC^{7*&d{9G=cYJytbR;Qu4A$ODo_sYk?8 z*$zjWgIlpB3(=m*(|mWMk@ey{_biv@cw|XsSafq!#R2jjW@r_km!sQ_%<8K;BjkV# zYkS(YJV*1;sE0X;EG5eoaTNIB#y#3V>z6SOlV1C%VIC93zF}lGu58;Y^H?lw{P@omKIu0$mrE<(fjXPlwx?RZPRsZEAWANk+d@6`*T-p{T3QXg z%yKmZ7K}I2GgIy-dw!0u;`fSAWQ%a(Yi$FR;=vF;}V76J3(9jgE~B5~OkR z3JgX6CCO;Hll>MTi(odz`8PYxgV8-HPyUb8cYWz&@d?i3Ody8t5`<+I;W&t%^s?t5 zNhtJ!2N%<#RfmtKpCJ-$L1*8yQfOb_oKZ!vq}gRbsPanDG$x1VvZnQHVv5dHOIM}o z9C#qKo=Jc}ZZ0e!LX9@Z6}1-_kl@`zvfVFqCneP1?XZ%YI+`;@O;*(@t&}|P zO;aunb{H1VVScR|&Uz%CYYP`Zyw0roY2$R~Uh*7Sc3IZmZ}fUU1Fp!q3%G-@o9$Kk zvYB%qeM(dgGv!D-7n$f0n0~ie>$*jcrKcUjZ7Pl@^^S%s%96)<)d+{sFDZ|_m{Gr4 z)t5cJ-L!BCvx?|Cei4vgm`8^`@ZYpv3f%azO38rKxk$eXfZ!cBBKfej4*Bd)EuG>7 zX*s=iK6=&^Qb}eu@;>LQN3x@W8X_OiRSi{Jdc&XD2{<|JClOkMAml%S9V+Nwkk+4H z6iU@hT`cC`oi)Hgi~1@A!{{!Dg80_{S_oUkmo5^v_|U<>6F7%&g5W74YL$JQwo0B3 zrfJ9~)S?O`*yp+@EwOfCDSVK9NM0QO=CS0HaE5XwJS1^}gCY6%>{M`Jn(2mrF~q!% zVk~?B`|%{^#BW|i zS0-yvSSU)pqe3|5=c$W8IbVaDajgk<;p&#(c95D33yZ8qYME6qv!qgkr>ltG^Qo`G zne|NuDn%$%yYE&}OIYSmhl*dcAYM>)EUM*mBsx>Pr|i>*^G zp7v#`Qndr)WkULx?c^?A?Uts@tZ~ue7OVULnS@x`odzSvMC^`yE6be9B=+yS5`mtE zeykql-;?7~YuSW-yR@J)Z=HhwTzn}MsH$0@AV(Yawa-8fuL zM)*u9m|<}hfRma1>|X6R{rlAdyH*2yL*MOpMZ2_27725}UCzUhzd}+(y z=(G{}=?l48{Z*FJoz)8>yRQVxCg@8yo&Zm_&*cs(fz-TlqLR2$&VW4Va`Xo1<_L%esXIGe-0T zf+ej6WdWL!5b`=?VF?5F!_eJvt|0+vN#xR^(ErL6dQR<2&}!1x&1mw7v=^+8qLH}Q z&&0yk(dBB={AWWD^CQ%u_gXwh327a2{9$_bA;X)sPcxgI>v z@ve}mNtEf-*kN!HL8YvHBFTSaEz7ssu0_lJe~5a^xG1|XTzKg2&Y`3mq`N^{x;vyn z8io>(P(bOH?v#!J>6Y&9ZieO^pZ_`U`F4N4_iyjD*0rv%O8;K+lwZs8^{AH>4V@nt z%-1n9V3ZoW7!#@go5hp=Y*L+4q-{)X_*9Wa2p-i{Jf+M?wBGg6b?_H+RAQmlB*?El zZ0~#>cx!pimp%J4GspSp4pX?VG9&1H^5uzXO3yg>d-k(uoCc%oaHF}7&PDuq3@>k2 z)9T4woP6~z==R<1KxD=;pd*9}al$e3Ez1|&$dOs-I$m*ownys`m_8?vU^=e*0bNUf9wB3KsT|jf26-9u^HegMQ=&M`{D2jcQB66LhG^ zgE1iLALP!79Pk$!7r?pFMYNPbjV}csnntv>rkJl}fkK=smKzEK2!DlH2M~140+fg) zx{=_Zkq}gjhSvXKhk!ZP@q<4qRfJ2Gg@|R%l~`O;4>Gpaam2>veZo3#&}~}HT!bv5 zxxR0r327y!?CU3)WI6p^QI{?y-QgjaPk~X%dyY{kq888RJcZkCf~$X9(nIx5g~V9M zT&aDRZn-;+3A6|Vmk5MzD55nUQ=G+ZOiCU$z3jYBI<GWXi+}VW4+Qx@1}6Qj*VLUVPg^rpLrQ6GDcy^hPCr0&Znks+oJhj~)&!nq z#kY|${+TNO$Z_LG9Kfg;8w$7+k^4$VBiSDaNuVB$iIkKNHe$a363ukkssq@CB-jB6 zR9kQqRHgsJp#U2b-%zvd88Qx*d);aB;_4{TD1_}1+C}Esx#CX!i5%XK)%jAenRb6s zD~&z~#b!~zE;o(Qo2`IkU?WQ-5rv1X`^XU)>-n8M6gz{86KlIELq+b?T2qg%Iigv# zzWjP}#NJmreo@aZV`FbxP9YTfaqO%Nb_;Jl z@;$vP!p?}Zf7Lwbu6G-Be>aAc)fE@Kl`FlzTWYycdyyc>v<_~ z3-_8|&#(Ivm$7J3L+kG?e=V_x$HNxUgNE<+UhNJA8RmQ=Awrcf-*%)W-2c`A1mazR zFj}wET2#~oSi18POPrcCFzbINBi2IQ{Cz0?FOH%5|8R_D=u1S~#NqUhN%8wF@U8bP z8LIC14mGW;ek+7-v_h%{hJ&GYN1c5v&0&WqS9nWU^@$-0Om!WUoo|82r%^q~0)Avv z=)t7WaSK|8ps|9%u-Gs@kywbH4ov^?2VvQ_d{1A=;YGzTY1_ zr2VXFKrm%f(qkkPF>^0NBdZa8hOsU`A!Es<#qo5AGa65plQ8YNXrdyTg?4wx-nZ$b zDYRuC8lt>bU$O8M&k4~ujf9klw{UH^EJCt9_=HH4IeISmPSAH&qIkXm0(R|3`}g4=X{`B=FlCYP7!dp0#R0ms%zhy zl2%UUvo$pmJU|)-p~lL_u8K#r0tO+NFnEM7EI0xd5g$+l3t$9Nd1;sbuYE7b(!Ww% z3lpjcSN-K7yw)ZjrCs1YD1LnFF6%%4l>iXVii^`asOTUc9d65>z#kI|PO%7)940ZmE%@Z3F{;QX!w%T;> zqUYpyncR-yqcz348etv$6jO9+5vS$v-pLFv76FsItW0P$I`i^nJXOBvM%iaQ>*&=u6} z?l_9dJ8%?XWSs}HZ}$3dtgrR;72af$)s|&!XV|(9qr8J*?cAm}AP8rof)0KW@6v&r zr!HkEcsZ$h1nyQ#B7c0OU@oG@A^2xn{%>1}7v6nrs%<+&O8aLvu_-0wns5oL%anlP zme6fLTq?^)8ciDOI}R+6=UlX-ETwdGg9X$HVAv{iqVIbu7eE0h3lo6`KxA)*1{pOE zenbEUZ-g@aj{^e;JiyPhL&Pa6&iG6dC6lpxCaS7`Nzh}mJ^iJuq0~SaGCW+VYdQ-- zaW>Z8uW-DG)&7pi=H1}(oASY7Y5Hy`w2@&u)oLqSUAAA4+ba8X+40Fzm7b)pq|~zP z>M;a7w0*Sa_@8#VMA9T;*f5G&p0$YNYSx z&~b|A)~)K4_^*<2X9}f4o%ijZO=V!qkHn)5{JYchcF?~4FHVBiG{ya=vzO83tGk?S z-i(gjwgwkxla!I-2M?D}2x}!pCT{J-D8Y;vST*j@;(WbGL~fsWFDienK2ltJ`q^LY zAfY4S+T4vCox~r74cAs`N1n17>(UbumfzNYk@YzmHIhV_`duZggh3kZln{I_A++)C z6Z^jb^sN z9RJ@l7Z0V}O2Fj8xN0+4So|k{M|fNBv`O>1hgWHk;Odq8tR+ ziF7|g_t(^Z-Y)lP#u-FFoNIjXGEXGJ_sAJtFAY9spd>mT#8KRL`8Z9&2GwL>U!P}j zrHO&mmRb6pcZtImxzE}vmd*?6Vlvupc@id$v){{G4_?RUkC(yB<%+#9Glw;;4-Y|2 zZhNKQMHd)UkOM_+7s2+{VPhz0(Jw+=7fJDL%WyAO)0?xsDezk8ctiLx@OWMH zde-9hbnP6xC0S$%%Bm>db05#EvavsgR0q{P9fck3zb;h!Wn_xiF}%k)?8N%%-u0R) zEJR8FHeE%p5EnJWdcdXvFs(Ix6u_?=GH36~F+v#<-%hr7@5|sx$H4s?7;i|>x<9XK zGS()#&L$xd6iJc|dkQSnuJU%k3$FAbP!EBJwin#%ILP#THN?;OKn-)dB8Hl?dig>T z8#;@mC^Nph69L?gj9}uDt8Q7CuYjUGI4II|0Qd-C-}sl_@S}|TzokhR=NAWGhk|n?RO=?;9VLuLW%ckmZ5ZpK_n4Pb&iKc3g5tCXMhf8Nrdn6`GgFVSqX>K63)_=j z&y=zqUfdiWV4~BVV)kjpCXk&Spuc(2ul{lIo`MkaedWS8I}~KO(V!~xNG=1*7FJo( zdq0?pj_MgtqBWf5&xMT7ZEYp(qER8<7&jP{Wa%FoU?+0ALOG6d#Q=fTcR@mWO88Th z{<&SF>kKj6E?9Y_iwlB_rx+g{qOuvws}_%c*#Eho!NI%p!Ef_73n_@#_ifo873f?7 zQEh5VI!@M^%|~Y zF^_tw0`4RaXSU7DPkiCrTyf)74xbvxVRnA}g*6*(+M^vJj7tep5TU9uoPE*Or?B>j% z?c_nrR*ey@9XkM3;vZm(mA^N9S(NJ?LxAv+e+WW+^p*iVYqQ4G?2yg4jN7x!=Jh&m5yC0^l68aZzz zF-WVF?tkWZV1w2>gx>@8im8+UW@7 zAPfjW4`Ca65HBhzmHG<1qE@z#IHFu8NDEGgo5UMnwS-%Y7YY0tM2DwYT_T;>?N z-3VFFfe26O{J0&(*?$P|BS-{Z7`*IzhCpgZLak(uniy)|_~NXCkS-~e9j_CqnDZkx z?hAV2Jh2Hx{4?c23TBf4=MW@-X^1aeml{n6(9Ytho)+atYFhMm>$A^%OfnUhLnd?4 z+8@irZKu!7pIyZ{En(Iao`0Fzb0W~kD+C-?Ymo?G!it@0y(2-UJFH8Y*cO}y;PHpN z!a)Hc&5vD4!V+HrG{MMJgjxvywRPAy5HI7l!4{N-SXzH;cl0-qXz3WKL(Guk?!M&`Tq`>o_HF?h?J*y+Y*e_?0?%2{V z8ZPPh+xOH*=duDyKioI@mjr`~V`x#|z^VSEtAt)b2l{ancu_$-^M!|y0F!?0_c_`yL_*4b0Voi{Dx@l_cC2j?HMw{MlVT8%bt zgZmx*FJ??V`n8*6+h1-kXM1Cdy%+2Ct>yM?Z9O%t13~BlVsh*1l`SyRwXa+qUi%%+ zsM762-9NF%$U$s@&kT+EN%K-Fhp$?g@vsnU0*M!SEljhd+c%=cOl~R|tACTym{>kC z2K`^g=e%_d>hVlf!R9&}P#ZlrO?1MNC^oNuGRJ91DPEhj9zG-S#Q+jI0BHrYL=FJQ zZWgtX2l#w}lNpZszlrwnslIdTkU*^i`>J-A?(lll5bCs3u_?@K*g(ju$yjrZNZXr0 zVe+k7ShAXmfUGu^7@#q^$*z$ZiuaLeoN9I$Dz3&IQethM}e z^%zfMogLLrpKv`QKjlguni`=aeG+y_J&EZnRIb7pD+t|sq5-iD3R>}oP1C^_*5?lI4k6YA4d0?OpfwDo4ei8L7vSJoDd`m6y0qw;`k;^(QH zU-&X)#PFaRD93LZ@4j})KtU4CERJ=&7~P(ZytR=t9S$9+9y|er@~+apl`r7 z!2aEY-Xjr0sU*dJ;7@S98i-7Su?r>Zn%bJHwBKzi1I3g6n%z`Du9Uxut1Q2YW2aAt zBcjFkLq?pBFDja|IC6dU9R`E(8MoU35pcjHa3J9hXl)&%N|Hv{2owLCCI4*nE^ue`r{`t)N=JpQOwR=(c z;Y&9y3p0SN1?K^CRD|$lsNT>4w`FOxzTPJBW`T_?3JbG7;ebC~(A5P424L?c1aOBJ zhGT8a#4`~H=*rQ|u#3>a9LGl#?-fRdo5pyyV@9H(p_P__ALQufOc0)HL9XTo05Bww z4rbI(B`V=!NrPiF-~db?wEqu0R12wkF5R*KHdIZ*x-Z0f%9>|k=wi_Y;)&!2n2|J$ zw!gbLjT$k^xv2AZ_RsRp{w791$Yw;Mn`vR_gJ0CvT7RR0&F8|(YAVc1$Xi{elwxwW zN%-l+_kAH9Z7G=67sh1QdR5$QVgAa9jJbG3nWp}3OMK7^D*2mJKGw$t`#6#>^d~nQ zKX$RL=yeZhwjxOKdA_UjzBsRf5}TeDMI%I)1#=y!*xRckcRWs3OmPc2?u_;Qs{b?) zo}UkVd>p(!vYlYhI}$r%mfFd$u9JR>WDNQ$9Tu ztnXRmzvSeIp1Qm!P*%>%?-(R_-=ag3SoWQ@URX!~Ct{$V12Ygg0l4}gM%A`CY9`<< zMM5=|+E#p#m&Q$b@So^DMdlD#B0JE1G;=dCR#TF4gJ9h+gZTgh-N8qWxQ!R74uRie z!JfYb;Qx=~gxCK=Bvzo;1JWRRjsI2x#UUD@e2O6GS0@yYXn(7FC4N>}kK#mK3EjlG zH(U=BV$4?9edNljWihvXqb>ZJ;E>w#Kn?Ydhl83J1jG0+nx&aHp(-es(oz%LEJ5;qb%`Ug$Z_Rjp0^t z(t?2d6tu*@Z9$BkdOGX$S6W+|i zXBW4FNJN#ur-)X+v`$SOvYhkxpxm}`O3uH_i{1_`uP1S~)W$lr%}_OH>6^&py~@~D zZg~yyz@K!*>2kD!lH2mI7<_-KXxw3`7^>f})ar#fbow5902znqDub(lBmq zL;$IMo0qy9FugS1l2N_T+4<~I5HTM0n->fAME4h$6tM*0x`_~FUm<6%{SPoIoX;o5 z`ipr($;e;vaTHJDCxE>XSigH4p85w)PEN&6-F;Zh9SUOqWDk_suBGci@k;k+>C3!N zrR(*uA=O5pdu}nkDsrg|)vIM%E(nEn;qSXk;b2oZ33x!IJj&?e$l5;>*?wqeLC+U2 z@LY7>%$$mOVU3Z-G)Nb+5ZIB-rnwxc;w5sn=z--GT?sb~z*pymD&XK!NC2zWoa_K> zV+okAZ1raJ|6WRfx;WwLhqYAHch!oX@FlXF4S6nj?K&WSX3fa<%0CvT5JRU&OzZDb zPAq+8U}G_rgAC30deVPc|8CI#>|;oxI!36hD{u=4OSY*pOIXtUb_7ms=x9dtUZfBha{Pw^IdW*HEU z_#Wm%N+cHcob>|^?Ley@CeDGfsoTfJ;FZ$!OY?or%Y|Q%vW}0-W>be}n(uRh=_pop z`ttJnxU;w5#Z?{BltU~oD9|$7pC80^RVZWA(N26dm=6+vGx)iPC-(YoHr@OVn~7F3 zpbif35$osE=G&j_v2|J-JivDa5~ykUicx?TKQqBUs+l1O-rTG;{m)~<>l0a%GFhQ){>qQ0ta`Gq zzLxhKQNP)k<&(2;nYlQmLN@&)s$3uDw_0w|#NQBB6O#0&$^XN<=?^xU#_Ii4!R3zbON83+axDfVWq!?#=>pL+Avd)xJ5O1 z26$9ttOOa|WGgi@u@&+Tvhf(uK%psxnugtl`X`P!GECZ z)U2e_m!?J^U+)_~J2k5nNRz2d90>Iy+B%@MBiLm;PI}X_b+M=Y!Qt`sy{o@tWq@)N z2(S-c>VFNXs;@x_O!!q@myU+{A>h|VdMwpo(nFu<8Td5~sF;UG2>)nIF~~F@^ieRU zZ+p@8%Le3SWTafo(&NpsZ}>cs>ONuq)w?e3zOxzAJY+HRdK~bo@LaUM`#FK?6u*iW z^X;ajveaM2>_6=X8c=6Er_=0JTz}FCb!u1kotN1USPX0@UTz^8v9~fWZW! zkW2>vJz?Vi+{6Y=TL2^I-1+k+-TUrE);U_aZ7$3~G=Jv%qk2qrHaL;7^fGm;WqfBr zWAobsGcjAtV;t$b4>iohRcMckF2_^F(J>Q~1T)w=Efv7xu;%OR!Mv607-i?*f%|E6 zTj~p9abVSbxSPI<8{ep}AM-z@(s{BUxc95XS%$(K@>y0@ePe&gL(Uo;bCH&j;agF- zRAFB4Xm=qNk(9xY@fS4F`lfNYG(B2P9VV*qo5+}E=2n9w{%?z z7^D)&z=BL(RFk2YP+cY;3MyRdIgF+qKuQJ%4xkP|*HpK$`S+X!_YwEN(`O5zNC4>S zc|vAFV-rk5ozmeyFtbG$kQNuZG$v|XF^uWMZPg!-&apQhPPe8A)O7UlnEoVBN-Xf8 z_v17Q4|34jw*Y_0`mC!dMX!N5C3gh#pef8(xR+#6b<}_JtzjwN0z1dsO<%6*o%&#*K1P;_gyKes3iyK3yyr8(sD7-4AOzS#e;BKn+ zs1jQ0i(^r^<3j0bze@mY2-bOD0~aH40R}#0C^}xLan5O?R?MhXeZs?6<3aGrR`0rS z{&~Avcji$iexcO~>EDP8kX>awdB)!wPM>{@tcXZVu$K8_H79TQ_wT2kgA<1a_I#+# zi{d$H7XWayyVP}7H(>1@z=?_lfG*R=Va))f!LS>{Wy=3C(y0tGKk#Up$cuXr?3XWR ztYn$ppc`fcbFcVtp+B!!E&X13i zx>!6OF&^dB^mJv|-`#=;cpw5@>JtlhIqlYxmbgxF*BQqz2{*)N0_(uwkm;x0mcKLv zWuK&OM)CvCq})ehAJI1g8ZA^XYU0!Zyx(>Qc4Mw^Zf9tHU9!t_UNE~T{l=BL@&0V+ z*}qdDVa-N{&a(E%D2>=qEGQZ%Nu26zwmR^}!t;kOLCyww?&fl)TVFGA;2!>4V2jFk z@_9%Wy3|fsIh+jR-&~2vm?{7qwh^&w2-ZKeZnU(4`M+#j&YoPh^o6^L7SZYzi9g?e zOt2+hD+t|?CJDJs^mu66u7A3AJJ%7*=VXGYX3{3Qeer8`Z%}$N2mQc5|FC(M{PFui zhcwSo%4Dmm{)hNBx>Z-V+idaRWke*yL-bW6$1SBYU^S{i5Q-H~ynEZKke9=P9HF$2 zKD`pv@J%aTM6B=iH(|4K4SZ`t)FW$a8A!`|Ia-nLW3i{iF0E4_-9XS)ruIzixWNK} z>IdJWFIA$4M!IlT*OhHB>fw@i$oMXra)+G2h)$5lnr@#~$0^XI@3}-K8 zG2FY+%oEzj95dJ+75kP#r8$t^04kQIzj7TIH!ktsF`||mUzL)kRtxw#rrM_r*vHT3 zZ#(@Oq#7O0{R~A5gQShlvRvAa+SUS`US8U_nG(b*h^^7HMj5zR}eIZRSW;0wcDGejzeeT81oLLTug(XMccE7qd5G&aB6ZX|qS?BYtekl6uzgB4ZbJZ~ugiP^d88fQ)HRKIA*o|Lc z65UbVk1k&(6)zNKqd&Z&0a=#eM$jY?fDIJmM%BOw{j?F4a+w#Q1~GoU>s83`xz;)( zdOR&Il@nVzT@CE~a46epk;*cgXA?g|;TUMSX)h=p?oZP2;{G(#UF&UINj`NoF$?;8 zm1z1jQR*VOo_;M8hkIS@>E>xq_BM(A&SL6{Q3fyK!lP!zTO^u>m}9m^tg(AyJ3Cd6yG=c{PnM_gbK?p9<| z5Z2(xezj*7b4MV|)vxZ4a1e_z0-jAuRqc6{2Nm}i`QIoYZL&Mto_h>-0^ z1|uWknto#)T@?97=>D4K^ftR$e%gNa1|!Qk^_o^!>C4a5S8KINHkXqO;kMRPn$wIP z6Lz$bzy9D72i=EjLg4RVaqc)zqSa<$geZ*1++X5BXmV{^Z?bM>ZW4qVr^{>XAzIl4 zeroRmTT28E)FxhvKYX9#_#1K%qpUHswlWryW%6TQ#3SZSAMW-w@d-Ml^G^^8L#8)7 zif1C{)9q9|h^TksyBR({tV~b$)f`q_RR`isT6ucQO`PxCiA6@TKz7Jf1vO`~9L+FU z>i9vUmmLgcc7WnDMdD6Ys>GW6J^>N)!2#)QpI zOvHDjxDmb#ni+qdt!j1T<%^Fh8P7+H-b`S0LjQj`NcR5&EmonICVGLv8XpQ-w7um+ zg&+}ciBMrk6*LF*=Rcess8W&|VFef0Bfe#f`zhCR0K4MyVDWmPPm)|Nk^9{u7${|F9^e{cO)&cJVghRNM2&ip^m1t4%bEy(0bL{g zgzLF$<6w-yc&tm)a9oWI1Bt?RUUrMyChorM46(6D`kq=lr}7&3^kJY2sFw|oAIiibvb@yeEeyu zMI@%lK@i_c6kx3@NHyY)4N<Q|6>SJHOi-i%oi(#gS*1I>~@%j?-4 zz~V^KT}oNCo8#-glhMi{r$2Ta%cOIkL3H$PgUQw2Y zuRYU?x(*V1^5n^dmX1*)NQHZ0y)HNLJ~h8;_@l8+aCGa>tbx8tvaY3n@1%t|3Oojx z9{elegaBeR1C36fejzQfWMBF1TI+LG@{M>)K6Vt^^@rB2h8EUlCBH3CC2FLsf6r0;Cfbhofnpc& zT2<%~HY zzPDw4!Lv|-G(nx+z73tLWkn(keX<{#`lq%N9Wb6Ls%mrc+`P_}D&Wf@%FbST{hG;^ z{hfB9_VOn0r0@p$tO*~-$h(*GzN#1Ae15>W=St;6ddgTM)IGH=g)$t?n62*c$)(%E ztWj2!-Pv-OLp-0|xp?D+9TX~F5vuEg7I~|U`4RxNS%0XafQZ~$2O;R$m^zCF@ZKHq zbmDRj#3nhnD4Mlf&q&tsOS&U-aKnbKgEPZ@WP8ZDU;MxTP_j6W4;ktZ?U9ZI$&==Nselj-h z+5<8DZqn8{MxtsEu?6qIEPnYC-oAyPKl%K(?^tW)N1tKOL&>fYz&JQ`6SWIDcz|0G zu+et6;lG>2C}9Qo$3B7HEqv2M6&QYKu8rII24WGJUZ0|`lFVT@HjL3-D?{v%7j1$Q zq4*#i;9jWN!NKgkNwbocc?nD|B_KEiEf}T?i!}EjxL!-|7u|o{bHLc1V__aLT( z2e`u3gmt1xd-Hy-B0^EJd^aSLT9Iy+ZP1N2m9I*pE#u5F1LPULd?509@{ICi8-kY;)}_4u6r{!h2C;LPm<~^O1ilX279(A89=Z)bPCptv z)Ux{K1gspoj9>e1R&R^UE`pyw!HrX7a1bESVJ4&>ZeHV*XO2UFwt{5AbTr$RH25l` z8_1k~fIwzxsz%t2vaj75(DVicAC^^AC-i@f2OAhx$$<(`EWZ`^>WIu$OJVlyr{BmG zW7H&pD1w8pF%#D`dMZ3RFMzQJ0+;(MBnFlffPhU3)eSSjsw<`ax6A@)n)v;uDz$v3 ztg7XxCj4%5DuR%VU#*4~?)j%CSq#6d{?q!UiLS&z>rmhOH5#(`-CEBsS7XA8_`dRr zqkbA5WtLUnOgUk}asxD?k2m?hjs!b?06c5<>#=AdPe#hpyet4T8LkxN)O zt+V1IZP=&xDCEbQ-@i5mjWS6=KF3$eas~aM)*y3CR;%y^dx_^56+jHg#VkDy9RG4q z2A?Ky6n>t~7#yPZzR)bXh%nji@J@_eFnC)6SEniA)k5EIskeN5fmipOK`N$y)&5eDk6h!QsI81vrv|zdwWPBpWb|-|b8atGfA!xC zT19A*=l>eC_-7S&;O!&cyk8rB>Z z3%zU0Yh*TuCs3RgBNGU`yA-ytIO`P0by?aPdrS}?G!1|kLvX_^_4q>#B3B3C> z{E@yG8Zjm#n_;a$b-X41i~05F)7f*IoYEqtbZHJCPU1_G>0a1F$oFZ=9IQo;doXhI zWyl}cpbqg9b1YJ-xu(qdIG)ay~zhf-^oVitLr&fED&r=I)1}034xiJU$jjXR^8i3Gnv364~C&NFHZJoNWfJO zT?TNvP*+OqnpP3O5_bfr*#1HW7{TmgO9P-qf=WgTag7-2Y(Vyf)OrK(tqbZ@Kht#q zucJSwEMqgs3FM*uJ8z&hTsMW^Qy+BYg-0Ni zLah2a;~cSKr;UA%0=yAv#bK4#TQ@m^Kg14Z@qQ@mf7>vOF9q-W%&j3_zf4;et#Ba_ zy{IKZDzj7v!|!^2MuOUKaDk+D*vc0!c*cVyV@omPZ-jANn2`5mAd};jH?W`YR*$>C zOI?L>=Ht~Oco8QcwhyGD6z4n1Whj8lO{;5TMc?~Cy^KCSdzJ4NQpoTQU@$(o@DhT~ zO=S=lqY!Gfbu8Z*hS+tTnf2OE7d?@2QgHD-U2uS`e-gDe2_%KYL8bqS zjD*aJ;C_jA7R6a2mtszRW3By|b-`pd!rD z`@;gEjY2syFfb7&6bl7D$xr-HE(xI|?=lpw3r$3UtfOk^7m3{4fx6k)K1qlBPzW-# z-0Xrw(ahk!b+4aMd<*)^-aY)k-7N6-r#<`N(39}zwKW| z+K6lChbEU2K!QXRNEu;~P$~I#`pa9;zS+f%YNT|udd)Ln6B89aCZX)-yN5-Do?NCF zIFFyyR>#6&R8ME=;U>vD+EVep;Uk4?r2C^AgJ!=cgY2$Cnhk2Ia$k2oklfP0d>Ov_ zXhug7pUCFklE!m!l22wY^oJ8{2LiBW~?>hp$?zhobtBe$g8jV!1;#Z z2MvRq@qlSpLFS-8Apf?S4;lM0PV1&DgQxVP5E0?MYF1kpyVJdK2JJ=*hVUL4>{TN7ww(S!MLtBgaZ3b1i>$o-<@% zQ|%GC47wsTYy`qeSxCLjwJee zRY?Wy|DZ@8_8p7TA8VZz@;}0EL1|+;goeiFkJ}T@izbW&5}({e$YQG+I?Uga2uFzu zBMma=UeRJ9)%hSHh0O zPP7?k-@Y{;r!UYuru?_taNNY)SK|vfHb$*!O(gwf>i(sHV!73k z8|!!@V>%`qnRQR&#P7M05WtJC5@X>)%8>N1;?Ga*(w~HRCwR}^2|DT4eht|m`sS$X z3SNKoeF0$=75+TM9>kuUFizrN3XgFQ+(@5siv`GDTHDj&ezmU>`y zK0V{Hn|#s=7IktZJhSCBy5V?%hy zLW1Xk0aE`2kQcUA=4N3?6fI@z8!{~j8~ERxI>3(9QCx$U5wP|5HRfRp4Zzg}65s_^ zD41xY6y`uI7oe9^HT>_~f?bzSSO$MPj-hMvZ4_$QquTbrD)jT+g_V*Lk_Vm#zyK)i^|A`PFmwhy}#oYCLS$A=W?>Cbl=}%dEvl}M*XG7*8<0Xa>$3f zKF9~h;E^*Ve@-j&je-goX89hUeeV^=4tM{i*3)S`+c@jV+WkT>^RCB943skN>sdFf z^J`=pOWkDo(4XeF->=KQeTpIMKYbHprqPI^LRG&;z^~p_X(JqW0^Wo1kZ0dg26hfL zVVez4Gf-^%1zTiTf5jWfpd%a7ob4xCEFaK$>;FtZdbx?NKhZoJu-}ffI06T%_09g_pIye zW||^>SJMJ*o`D|)Vl-*A=agSMH0lkEe&mPWu!~^>fkpy68L$VpLVJ;-&gl zQ8hPoNJL8n>y4VO2}sV-MIhGKbTjt?|31ys{d zK{{NuIunj@CJKsHxxsOg7$s6jgV0>v6_GA12}%Hd4X+;4f4h*sN{B`D7=C@9Y__tu z4%~9L-|ew2RmxLrLUx}k-6@-r(k~-T<2|_@7WL$$!VLB*ON}nweR;msLbFg^PHae5 zfr!25yiMCYDKRD-$9NG%%vw>NvU7hWfkTvCvoVf}0p1>`(nVED1A^7|DUE3HnzNeg zE66>-Z8yhJE*Fn2SG+i*fhT+Tf1h?niGX=(K~k>rHAs+^CoXXj@X2_TIaZzRPssX- zVc_dk3U!^$wBLg2DNt;&%DP}a!&~aUxNfRSUlI2!7PjJsGx1E1n00tLC?kmN^ z$QGP85>6vwxvk2u{R6Mp=LGagr03r$ALMcZQ2#PfVdMsn06szK=8S+}axi5|QUCQC zX3FXSp*flUTkYSeM-*f8fDq2^# zrqT%a%OHZHcVhU10{#261$YoG34mfi90D6B5p0XJ2E$;v@jnVmfL^GRG6sz38;FZsB-5n3B@u>dGu>i z|3n7Lm=Nc%-t*@|at+Ku{zwjqjunQ*vTN@IRTyrS=e9Xix5;7lVvRM#6m@}OOf9Xs>Po*y`geD)b{Q@VOze-lQa+HLBxeaYwi znk`T|LD8!K7B_k}M&G%sw7KbTb`2N|yjFQZ&5Z^-u)rX1j874oI%{dPZvgdhXQ%AY zOCdQ45_>ThQd<==ztIW;fv5npzAYX=qlx|VJQxmL02&Li929{K4f#y}xX;Ut_6s?U z&Rrgdf3VYi5(^N|51aDtSZI3Mphpwn3G;QsLINY$R<~Q`e?~24M}!tDzl#QHZZEHT zn=g;nOfm|09>ZAseV9kwkEup_sp55?Pb)JWUirgpFk=Y=dl!qe(cm85)DVlohv#9$ zx!;#AXo&=4(LMSsKk{8uF+S&V>v0U1MIZbQvf&Ty_|jSxSV8hPYV6}LFNm0lAiQ6K zrXS`z^2?KubxQHjSg&-*L_3|-rShX#w$A%zlhSCuD#5b`@s}j`-m|x@+1FmBL#NAy zqt{-Gy32;4pH&Ohqx<}Cb{u@~Rcu#rV&Zy5Of#EQ$Zi5!w{M}wu!bfR3?nI*Z)!lE z5A6$2UZhECelVvygj$~^|lzxeaGk4;@}KMiyw%D?FxoB0|Y~J zr`fLnu9D6Gbe&Sv|1i}WS}7PmhnVo-XwR>Ntkb%d2Vr-|dt&yx3g%gCj%ks;Vs$|m z;GnOT%okv*-GuA(-2@wi`e@@)(rvNRBtpmB3l~YfG&_cZw-G45qe5gMW*{qF`0TZ4 zGL!XHQQ+Runs7+}M}YkmD$qOQp)dE_0oIvU&Y|4-lQDl=tCs@CJUfM(ws(f8Fwb@7 zFCaeZLR-miF7(iQddJt6!=1YysdsC>J>wmRJYSw6Bz4qc?{#90zfdFQMJ|)FaEmuN zN=TpL3MLHAc<+-!#Sb+jP5hmrFUlfTZ?ETfvoD6Co#Dwr)5n6hFDIVqSBJPI1F7I7 z`;_%$m>{0jiRtpT2{2{AUew%}2McXIP0pk?N@-^=(pR>rYPj1Jk1eEjrSk@#lgmATg)wgPY-og#mhguem+q zqQq@v==jyf-;w&^j!2M;HN z2E_}@-E6gOm z{duzb#^N=~)ZK9=+`MGn+ZInI+hP2QD@pb9jhh64`gd-%k{tsQWGsWe680O%*BTd$ zecfL}#7U&QRN`>!K=0*>{=9e*giLxvut`5^&fZO#HB*6!NzwDgC>oY{y-7aOCQAyJ zAY_*OS}dn+TKx5CaW`S*0kQ6C3*#lSV}b4x=Pn*LGf$!-)dkter>|A1ZfX#2>)F-4 zAo4mtUKcY(75&hO&aI>2W4$=6ngOh%e#Ahl$sF8YjT(MRrspWrUt|a54tDUb2NTHJ zyiH_!Xc|riEwsh9Mfk9rQ;Kr+c*1DvfC#MMKLB+JAXM+ZihzobZUjIF0PO(trN6b} z|Mh$Tfx8dNdy+BOonrQL-gRTPcl>-OW-6-NSZDbC)yF0^2*q}L ztON>9ywq`1AI}?u7MOsTerd<$OjcP@rz3@{Y{fEvv$cY}G^%AL2o=Q~zcv}1hGjS+ z29km-O}(Gw)*V}C;sSL8Ltk?oqOop5NPRPHZ=BpOO`?@0< zJ(hX7Gn#8kwW?@Lol8;{d}s*&+|Q0_?8$?3dPRB9`5hjovzpe(qL@iMw{Fj8|5Wx1 zf58vYJkqb2R~8o6c;LgE|X!uq>I`^Dz(8c`Mhmqv`U$O?ge)2 zruY>MItBG>qdINf=aB+<+@GKsY3=~{H&lBLzy)5}2ZiuQuKs8=y+cMgXo6HzJ2Zc~ zYx}}G014lb%!hj^0X8%~Po(kj`yE_RTua@AqYb4npeySPPVNEFyc7QsE&vfgrLXfJ zQw$KVNEuUN62bTFk7qjf;=AbeE0gH)i@b%(WoA^)rmRvCI-|x0D@Ou{R!)@%2j)|< z!bYDZZW(^LYmSX;wg<4815Qk&9+FOaUP_~@;wz#`Xi@Ozkdw?lwQSM9SLQg~^>zt-;)76g zB2`&EUx;_*S$#47rln5K5FVn`c?P|C#LU}hY0lqqQNHynj9z>s0Ka+g$-6d|+m(Cf zHXDf^Ux$Llu}hbz52O~MqFvoc2bYmN;S4-G;w@Cvf@+_9; z0%-8M7a56ddJKgg35!U1>s}>+Byd@j$EO^_v z1MlPPy49}HcX}DXNpTQi+ifdWmn1<@Fnqyx07gL+8H|F%3>XR3Wcg=_2ojK3B^gF# zN@H?U_Mfj~+3dBwYq}M3HAS9D3_Lm*#DCwJM>=)2?dk^u?J21+#A%T$UU|uebFiZR z_4WCZHW$tM-i44nHX~S<{Qxwvwr#UXq-s`UF>Nht#IL}Sdq!_F7a99-U;-?w3|2cp zzc5c%8GbLf`8G-aoncFV$2GgRfDEPVW%8l+XQoG&avqZDwE7~h{dTV61W(#ox4<_D zQuV;1?iY3iPfghj_uJ_u7EI#I+DJy_7P;f2hsU<=hphRIo8VW`lK`3R*vGbu==GPo zfEl+dy<7b+5G$I=n+_+F$=1$q3+@VQ7!5IIuvEf>_5c#w{8+l#P2R!N2#C9}@=&ySMoaHOc4oWW^;|VRsV}<^e6)uMD4A%@C$~0-j8M@ z>FzOy?A81VMM4UDuxi0r1m}|FpOz_~|oVoTm4odxAyEkXBXMs{SIi92e@OcG?ktPTA9aJFGbg1q`W`4YJF;3LG6K10$mDIEx}F?~sd+jYU zgjoP)U`taE><05||Az=B2H?PT=TvE?ru;izk{Hcdx`UL8D&yXNMPaYW-XOAF83$c29kaKz5V;q z)*hKY@ELgHCyer7v~Ut?ktfXG5GvX7-bmr|=%#GNgV5r-C-h#($MQrZ#bS`Agt8OV zDw-U8(!gR#b?3;q_0i*~iz@%GMYj0n>j&&HH8LiC+k?3!#DqD<68EFhQug7cOdwVp z%E9B1pTgD4BcFF8_r)*BO~(r3M++Cs%=@*Y9m36~ma2f-NzlXd?IdCK(vg8}z(@~c zv#Tf#BYzX$PYYRFjhMf`(ibW83N<(95;N({XzU7w?5)tHiU!fA9LU+gr?1&|Nb7-Y zxJO)1Ja9;VtV#=$_Afbc1^}+JLIbU(p!}e8?^>hv92}o(t zY4P>ju#tXQa5=iVE+iPs0OCf)&<1B$#lqsgM|U7 zSkVd_?)@(ho+G<~l1nA+U*B!Nkdisox9$@XRnqCdkNGId-1$@$2V@53$l3Wp(e0nq zmEC$NjU5qd^b7gb({7m6eQ?4#*9yK@f^!;XeG-RbSu~G@8F5?sS5%05LBN{5&-BTT zxIYw42u;RPXo)!T7R76_I%~fT^o}aoJ?qI`^0p;^gb46BI;_6?_)#ELBKf$4YQQcp z3cP#7X*jiaaa;83BUo=A?vcFr4A=*9A&xilYsK|D_Q5_LyY5I)){ABnGTTdF7mww) zOnuwSB-ia`=Q!r+BE;_CnBTC}&jM~cfF7WT1BdxJCs%_m6 z6U?f8&apqzozKEw#S6DF|5%!;p)ExcpQS_yW8sqf#K%%_b?@vYW*QO>?ua&Rf109Z zan67P)WHEv6`qy?2Vn~sZ7BFzP8|_8=M~}^uxQEPX-Gw6rz-pv?zFas1He3B2>bwH zP)$TM>?BI<_D>aD1aVLfGN1>oQW5^Y+p^{3A%@~Als@u;x-PG>W z=9qZ>q)JoeZ zwm599nFQWO2W|BF-K#ie!x?A{GO0*MopMe;l~?qXF$@f%@3=%BHf5^Su2pXLHOB3n z3C?kbLX~b6Afue&xzPP7#~QWgxAiA?q7}_P{`OqYd*!2M;K@Iqk4K)Oxv7#>xk1CZ z%+ze4-{Mt}iV?ViAG+(QA&(Qh7MF?i0K=LUwP{(Y3qa5+dIG1T&Xq<-R``xN3oE!9 z(6bGMhk^FkfSSw*@6Sn|=<-oN1~JuHaeEZ2MDZlx(hTnCT5!GYPtqz8F@w~x^oYj%4=vyw95(p`Sxsx^DEJ_|KM4uvCgB5$*z9zoQ<;I`S#<;=v6yAUSEIW zO84sUv7tlQ)a~V&H#T8&T)2Y=(I;6g*h3789Q|T&O5V>rdP)T@RqCTucHI@=9ozOf z5?(*T@D+M~LW2N-veb%BknO%jD(YkntX7`Qs03+|U~vUq{n=pGOCJFZ@5Xl% zTYETS)$e$qrO>2}RnH_pnQnkSwlMy1`qS(L6i{F4>xLX%{=U%@>uj!}9`88uM^8+@ zee9dfzn{p*H1%1Hx)#a5jxPCb#nf(>F97WKySdcsgv#maPRUPhA4YYNeZbqarr7e* zk|XHqdUbVb7fP5!ig?%C=<1?g>~TzgGwQl%#T2T_Btq9Tk%x9eU#* z?}SpGJ9dfSnpL=k@$PIt)*YdPiuH zlGx?Zer86=C~fhGMtll73mX-Z8K})O@l)s)WeNJ?d*sDH2ct5yvhBpSox;^;+X^?MJJ+|&DeT& z*R7?`vlwBrwXiAZP9n*IRU860QrB6x{cQS3S~2N;_#h9!(LXXanx=d#-MOCZ0{aUR zMaZvw#@a8)6yT@J?3PwJddFsj9kyRTZgPi)r4382!TRFoH2&ksg7-u?Fpfb8H$v^X zp%R-%r5OEj`fboO?&ig=OmIn2k1R`2FQRcMoP-pNBf&gOS#TaqVWji+-|Q}-wFV2_ z7*4d6oa14Y?q4MrBh@?J`HLJLEKAfiN)AdQdv#1P+4b3{HXH3eer>a35JfYtwy1r< z{-7O%ij<8|x7j}vd->;8@BQsIZ!6D!nCOao61<))vji%hVOHDHth1Jo@)feGf4E0 z%6$6<=cIGnsFU{mVy3Q^_X2>UTx4!ts!Tn#ied8`BhiQk3N<8w=a0l=Hr7z zTeLm0`_3Z%FBI4>Zshw1Xc9={`+LsI0@_m3DL>!e51~>AQNhP9bH<9A3jrw~uWXe? zc2_s5KGzHeqRf>-31-V|oyE7OuUBoXz)pDwom8fi*7dHU{Qh5HxTc({zLcep!tgMZ zK{Zeb2me1(^BVZ8dJo*+wbAL32=gEDi%OO}E~iPs@K$YT9D%TMYi59uT+L$-KpUXN z!U2#0U>20AE26;6e6Y_Jnji%5k?4nd47{G|kW}@@HxHI3yGv(-J{hGHO-@UxkrTRa zCEbDt!h2`LI;eoDcX4JUx&fT7Uv)ow%7#JO4M{(XjECDj#n(+t3hw4y?&#qiVLs}I zc7iZ$(QFx%EP2Zy9g?xP0Jq$u8Y)n$=Av@THD;6li`(%Q9x-L{i4+aybS%am472HY zGQn^42aDP^f!iltN#SJ!VjJBRC~q(XYb)A1I2H}>6k>(42388IoOyjpjOO4C5k3JjFE!LyQ;FO}lTrz?A}O5sww;7cmUkk{*0IBgPlUwV+Gp=(HhT zv$Kh>Ht-XxUw+Vv(T<<15-Aj2-vex_adLJ}Q?{fL3f}WH1O){I7zIcq%w+&q zWD;k%I>pS8f94hfCc|j!i#cwbH+UYl;dEDge|Yh>m>2@HA{K^d+?W{u3d%q9KTtuypFYJB|WBO za$N^D1)gaN-6!>u8$-L0R#y&k#LJe?exmGzYVJQ>|N3#)JuEv)@*4lNze`Z7PP%D% zZr~K*qiw6)*u~ESs;isgko-=YokQsk%snBaHRhiyuPmk~_k9(~4;lOYpz=n7*+(2a z)%JSYEUH4s*kRl{&dB}c80RVjn15Gl_E;)c|UW(R@wh8PBzJ^~$&m(!7HA8%h)}M?4AMA8tr>?~% zs`a%AR8|&63nMYfd8&g?aJ!m96YYHfY}hpG=x9Bf)VJf6Q&wFEst6bWb#4F%h64kn zR%oOA_w-0`=@OhCx5wjm{L+zh{{SRV{HyewK###mbQI*&I**eOLgU2oYII`h7ow1Y zaZ3&5Ifp)ddp)6Ix+4H_zVf2Ix8b^epZQ*|;yjwx z3&%u`&1-%59kST&E78eD&bEj>n=@^$HA*Dw(FvuLv#W_$ z8~Kb|!|AC@m&!DO7xNvFZ7VG?9vC7TYfd{;Vngf#&RO8m@bq~66HNcXgBtSDzqTjo zlAY@mJ7S$f-#%SIa;vRCn3LwNb=Za_poXSJth~|>ify=e8Lxim8HmzTaS*bIS|*Jn zqT9~7{s+LqPt`j{s&a?Lol(v4z`dz@Ha+>apWEzjxVmZl@igI=;L!mvhgcfqEkPab z49w|TYeUj}h_uM8YF8P;wPJ%u`=QEuPfjVL{9CTVV=opupaiKPOalftG6(SYlyL$` z0OuBfEouCqFOlyEVQf;^hlSss_=hcZ;3KLpk2S&2KDo$-7?5U^DLU|IBUQMts6Xc5 zC8*v#-fn#EQ<~l1xoF+hKU6Gm9PzFi*K;ov&qfrhp{`h^E0?U6!wMlFHJrBBH>&O9 z7NSwM;0%YZ?=OF2X^(S?Njy`FmQ`LqjM7KEJt9Eym6O<%UF9u34sc&JT1_G0`MG*M z0yE7!6otwAW_`d>Z{dSEEmy4dGId?Ht<@MlM6QnkXH0AuihoQeF)G+VNNA~_H1Te; zbO>!mLvOY?*ZdN1XvZv@xp#9G21;hh;V*Vf7t#0Vq#6z_)Mef@QXdALYw~VMUZa zv}5892D@>h9C()jfxy6dUZ!kvlMp7hq#gi=9f@%PhC3cX5LN=LI!9Qdfl;CVf47rc zYtoSgaj6rV--bi?G4j@TwX)=A@nd9%bp5pB?61{gnzw(3I<&_0C?NCspD4< zM_BjA>)EntUATOcGO~zaG4Y9lQ%5w_fl&O;byv%mck*ehUP`&$>3@>uSbbMZFFF%F zs5>glann6f9lF`Fy1LGaJ9<+T1ZXB3)0=C7fxDW|rfPn*<@*k=o>V^K{8W8`@7MNf z%(`0!rwTk?{WkmhrCqWdPM`DUEC>IP`$T`f`h-b_2noFjlL`_reY#tklE%8r+Y8<5 zz6-0ac?)3*K#B50&-|m2U;iO&e6wMPMz7NPTo7DET;9=h33NmYPsg56 zM`kQcYtzDNsz}FblPRz28@}sR?#Hac*)<6xri@|-iL8gQ*Jjrd%*dBae$zESm%H` z0Idx!9S%@~)MKEY1jE0;KG!^LlAeb>Sm{5|o3 zrBOP5x42A|hMe`@{{U}@q;nw;<~(e$!AE`urQEs%ntdqcaNBHiB>H}-!Ry?dcXMQs zFD)F3$5JsK7I;;fKljUy{*b`G`MI)ly|g~V*4>M&$h6deC6gh6bKm0bx8*o+t(#FC zuE6y+(i0^9_|2%Wayh^bg1@;wW$quem6R4&8;#kn_3YRu021YxhCWO>`kXWkr?mj2 zF)U(0!!@tVI4k$aUcd*>zBuSd^xNC(r(qt#b@b6 zbEl}D}6%mV=Li6E{Z%{fs z>96BrZ6!aAbztS`z*RtfiW2+`;U|X1!$;tkZP_lf5DnTLCH{`ia4oaG139r7akUlp zIUoF~Sp|BRfIO%_CS>ORBlJV+ZG#l!Df>QX<_+$F;^~IqCWYUKoJGyfy8(mp{3#Fr zSqku2`I3@O|6%IF9%KV5o}2FfF)G}|$2K*P#6}Rj!j5_N)qDJEd5Bo!ik+IS9FoKG zN6q>VBw&+zx)i*N#kuzM%;&}xZ*SE|_N`;!sxUw`z?9tgGnK*)f#q!{q<-)7P?Q$B zfZ|wq|IC)HMSRwS@6my@s5!z`0yefAZ7ydtr@Fk5zp(^>gx{ONV~E*houv>?eGcQu z`6DAjHw-Ip#vTFp-zK*h606S3UoH}1Q0Uq$t??sI8|kmusjB=k^>E31Nc6Rhe9)cSrf;>1Qm-_)Q&F6e6;*^CCwf0hixNHXd!bABdJ?Mdh?`a25kg zG(ktgK2Dsb(_jjvmCW}hG0^y#-F3fKcrhi?xW^EOSY~MZ( zkk?2e$lM~F5r;7gbGkindsrl^%PIuSJM@l8&3u^_=Su;5h<7K5>_qn3VC(BA-I#{{G2K4DA?6>qpR|JmXph86t*5P~#ew#*QgeKZ&H&uP!8e^)OloI&6;XYOQIhTK3{`$w2>NV4Pg(G{9soB zG}l>(q$GydWN;HR+3nPwi1uXo)ZI6FuEuSsVhpRBP5jn z?YQmr{DL#qgOX#7y}1a9=TD9bcW0r2-j$AylA^Uqe?;#h$6| z*9$tCxMuR~r+-7`Q9iqHPFm^JTe1Xh9;JpJJw)7g4^h4he*3rvq=qip=1IH|$B+3O zbcB2s&c)#rN;??BZs;!2MO~SzSu-*;F$8Zp_H2#>##t7I%|w6R#0& zj)Ew^{H_~jwIH7n)D;ulEBsd3l4f_GM+FwkT{-k#HxfD9V7Qsk7h59hj|iU>*1ENy zsoPyMbO0(S9H1IaMnc=B>>S=eXF)dCJF}oLY|63ePclS}P&^3XAn%zaMp8OClw#NY zJGzP3M01K-G6ir2>ASGwQfV6+(sLno_*dSr9m1hoVK1;v1rvi$k3K@|)qNY29_tM1 z{+vg zAKdWm=}o;G?N#oigHxDz1F+2quhoqiiv$1JF2xJVecI_m=5|HyR^!6}A4(n``7q_F z{(3D^5tRC5{0hHCJ{*J&JNG#0-YIi{&!LSB+^Cc&3;qqLT=iYE#7|@|=S${GY>AD9UQUBEQ`05}B|0QU!ecv~*vZ&#JV?Ian}Nxhq`QAQsx) z@eS*yHevGbZ?Jt%LZ9JL`0JE$92Pt(XF%eR-}$MM?{ zZ#Axc1PBI@%>`R`J?8i?BvQV~!v@MW@iovcXIaYF6ODz>uw!J0+~`H{>!$E^``Zru;UkTwoLB% zH^`<8v7Wcrk>_q-m)^uok8C$NfmVFGSjV%2=N9 zkY*{y!>nYK_Nvc+mgK%zG&=-DhpzeuEi1A~~#;cxX7p=Wb^tfor7t-H$zwl$- z%HdCCZ^=TrRPgrMM ziFI|~NVvw&fz~fByz&y15D>?oH^|jx-*aT;GMuLYgr5X#7mPd4d$du`Q%U8XWDM{B zpfts;ROuFpC67F9X3iNK3pBuO!jhbj$dVv(n>PWC@hRkAf1}Q~c*uW9a6K7YjvXAf zBHJOQ!R7}63XzP(VSGzqn^pl8;yD~*0l*Qiu0oeZ;or%VQ;*+9GYY%#W!I#Aoe&GdOot_^KNWmB zwLlX&UI#w0Aa)qPk*-nBh48Lr+p8tZPw6q-r|MrOY%-;BKy?A6SB(AQQ^P=6JwA95 zMc_VqEycIyj^m8}Ved@#n|f=fnpG#i%$5y_L1wj}(`a50O4f4RzMFEi@2N?;M-suK z+(GCu&wwnfO_l+owuJlnX^#F`fnh2hpE&j%_l=fA% zDzy0S$AFGF;?H=HEof7B@Q8r2#DHGJG+Hf3P4>1P@{|uH4c_It2Lm?=sVsXD|B@e& zeZF6r?&7I8cn-6Rv~YDYoU_vPcH433m&q%n(ly_;2QMz|q1qAcOW?@&{DOZ$d9oB& zQb$<-KUW3j8h)A6k_V4r4_Wm}3#M53?*Y7^?*QXrH~&_ED{NEb%mP4=z?6C;L0>e| z|Ifvj68}@^P~Hcq`K6Q*J%?ow=WWLLB@^yS^#wx6IeRmM)y?-AUo?z;*ZNxq8k%f& zqQ#Q*b7-kmLE}oBIdeoaw2YIRrds8O# zvwS zue3$`(c3WdW}h?bm`&AM2O-{p?&mNn7cENRZ){X0vle_tf1(aC2mg-2fljrK@UoAoFL^d1< zOKWNF@P9Ie)c=zye#72e4F;&#M6hf};A=IEf|>pr@>>4y>ipUmVDn_2??TM?#XRwj zVUyuIQZu=?EQJbyrVnjm?*VK4%p~T`ye$W8AS7@;w2?wSFNX)X>Jt5rAYmR-8(4=g z^OlH^&T7O^ngA(x`mch%#Y|kQ;g^z{T>scH`#X-7*M3EF{hy-I6b4$!f713A1*1Ph zj)9B$N`GaRp6Kt%VwH+TN+bv^Eqc}TTPjnX(h0WWVRMbvEG9;&C5aUNAOp;poN9x2LL8B^5c%l5tk%LznB)462HIa{ENg ziT)EEJ^>H8%;CfPoSsOFf~*kig%&KjNWak+GAUHueNiz#{=4H8{Eo;Dk@*saC4jLl z;m)-IMe0`nHoX8leZ43lm{@eV0`J;u#O~UMv;L$|`%7sJYLxnRPf59!JAa2#V+c2K-}gm<-E82R#snI7*Fg+cM7l^mHZmgcT)u2} z|As#IRAN(d@zGFIzSW3|L55DrU*+KJXK+i1Am;~&oReOyM?k#wp(~S{WmwH-nAnZ` zjdpM~PWFMAo71FUHo5I>!_z{^jf3ju4u9+NnS1#)#>-_+dclk+=<U+b_dYlLELte^ z^V!HVId=TDZ6}`FD;Yh~ZL&nYn!2%@@RZG1ctkv0!d+Gt$ytvHLg!3BvGe)6b6xfF zy@;+aaT11ld(RgaxxZd|kn%{MTKtD-GBPCS&(j}KEX`Ykb?kq<$P~P@VBxKE&585i ziaU;xlsNrMhW!lF#UN|*O!o=(Odj%-1m+v8D7y$ z^V#|aBKx>?9#k!M9KJiicNEfCUYuVncN;VCtEdXmUGKNe3RT;jNLF44ifaEZ8wzLn znLXahC6XCBHDb^!Vo-fW79lPMGJB@1|6$Tpl^&glO=!R3!;<^y=k$Xh`WqIp2M)^P zZOYoP0?=#YSt2EX$z+M)D`Cs|8-YRqa<068n?9=xTux<5!Drid&XZ0adf2bcf$^j2 zCpGQ9c;^ZS*=V&67o60dk*|KjU1kGVqf>(He?Iv}A~jIWtwVB8FD0TL8=d^Fh|c-~ zX~vGkSEE;+BhzpEcFZmey}B}0nbxq|Zy82MIdz?$)y9+7hoM3TcOAh?`6SkUeES`y zo+tR5RS`6Q7SDcf3b%1)eWszm#Q=&NzK-IfKU^aU*m3Jrd992&K>5s*#@k5L~U890L z$ALoI3OVPdXvGDGjo0!;SIH(_l!bE!i`iiYgO=s){e#P(r+uRv)gQPx$Ch?FZf%oh!{uAV!J`L3Z_ojG3QsKo zNHAS*_&4XRMwog>JuFmXVAL;J^u;m_H42n=>jGh z%3mltdP}CX*iS#DP$yX`%O%Dzt$e(D_tJzN1C8;G9NW7QgpQ)NkW~Ynta0~Lg@)%28~>Bn%du;uR4QJbX&g)KH)mk!`LtyN9p!Np`G6A z=3n2)Bp13wk22aQOvzkLBGq|E`-Sii2@6+LWaEF42f%_(N8OrS<_PiqkkdlRfqv&8 zou(HVL_^u#X~bXd;70Ot&gb{cTb}{MG#=`fuoBN6Kv0MP05iy37wO;5RN~>Ln|Dqy zQIFp$YauyTz#YrFdZ-yip=Yk%K638jTn`7ax`~^-dvSCUs0LFX_4!zg%H8PjF!5%0oQvP? zV!Wzt5n92N&5@WBU;v$X~%=l76VPSn#{poGTAT!F4Xr~jdC%CrR(47L&gy5ZDe0%`_2 zGul7(J0id?K_nwmGw3PP}w&5r{5&U za)TCUx8+CRsZ>Y2sQ6i$UZ%=bt&{ovgD67M$AgSgMz--7|G0JN!VWJk&(BeMNL!2# z9`x8i7t+yLklLDLnaqlVp|ZdTUMgi7e#PNpAysY6nUv?py+JqpQ~EJf7!z1O$}I2t z34U9>q}(!L$8-8~QH7Z?WqD=A&p(s}npQshWGw`^t>Hs+6RJRCiW^mXoi`ie+t$ya zr_t!B#gF|eOZ&z~Ek2LwYi*-)j(7I}wWg(SRqbNWCLfRdz9QVO%h1y=E&l=UCuOdf zaQZEAe#nq3?2^)A)0Adl3q?c^gTjZM2Vpat%~{S;2NPdi*NV_IT%2gT`g^mnaxEZT zGA5fN!Rluc%?`h#v=YJw1X%C_14BSPzdMyjQgyqpiaUnnE2I=53xU|?7XW~9XD$hI z3!yOs`jCT4Dd|5LHa|ZBC{x(V71{nrz5Z2ae-%c&*4s>k9ZJfc)Q?vIJjZt5G`TL_ z#&>HfDx%`VpVTE^Dp?F)9~i4-v){2#Mx9?0`L39R8eh)deWYFWq#zcCXEKu)b<1Bui{VB zRUsrBm*0h{E&4*S`btN<=a?l{7RS>qH*kz@+Os6P!DVatyqnNB1e?31VTb}k?#NAaPNJhA>9N{*a!8!$3ra> zvV%G<;7{d2O%@YP8Px`viysjUeV^B!nAs@G9~hJj#xyHyl}+Do>y|O98D>1xW)6sL zS%2Wn3hWzURX2_ZG1jBrqoZw*V)mPAjv4Z)nv4~%jLX7}M^x}5jq{Msd5p!fHPJF0 z|1mZH-0o{l;Z3J{NB9^Iygf-G;lWcZdSun!quM=+DRk?iocc-=%^!7&3OWAU_8S%B z&G*u_ndZabz)EZrw(GUK;#iuC)=v0#ePd8IiCfE3{lIfV3&rizxlz;E5&zLf(`yA8 zMZa|ReBh_ojDr>=e4Y+d*ln2~rQSM;-0j(ah=AYrD9W zu2vCIn=08p*W#L*2HLq;J`6pN8#@xE*(5_``*FlBXxOO?on(@?chxT45Hu3Z=9tM4 z(&qJ;GR<9H4*{_2|W>S%1#Et#Nb(1CaSGthMhE#!RuhMf1SyK`|#v@!tx$tnX zFLAaCEvm^gtL@^(!4?(6X5Tvq8EGEObJ4yy@JW2me)CfacNVZg$#>&!^XSYgZnyW# z-e(6DNMMPH@uAm`?DV={N^_j=_!`YFBMZHv&4zVd9$0t`NvNmAojv_ z_7NyLac{MBu{bGvVlf~f>0Dp)ckOo>Qb<6FTP$-*OFTi;T{?Aj{Gi%j4S+2}I2sis z09bj&6~2xa_U78@mSXDqU|QBo>=V*3J}ya~_Nq&c=VC&AjS z+moWk{1fi2hT}(0ee`N1H}A~|4AvNY=0fALBWzHqD3dQxoaFb@e$8^qe5P0jb%%1h zeU)M8@_#D4$w_J%`FtkjE~F4%Dcfq z`SPHecQbci-s1RT-3__iX?K&NenXct{hA&?j-PWL7sx%a0@*OBojVsNxpse*4am93 z!xN&=0sLlgNECl;|K%${3FtdlEDOhdt*)&76pFY|7}mdlQ0j~X zhNQWBF!p;mSv4do^uN&iOw}d!nEwBa4!i%S+-$>s`{)ARPXsUwXdO(k$%c_S5@Bts zajdh`b`|Tt5yE}TJ30U&_APgNT7hrp97s=%vMj?>O*DZ)@zTn$ z^h4QOzj^8^)NIAh?uJ*mgW1-PcgCsQWh8r>F_@uuTCw}J13S{o~o7iDR9%3)VYKsTa ze}Utn7+Ssaf8?H-EF%rfj6aY0zZ9nyzYdu zpZ6F}vAxo%djemU+7~;gv&S#Cod|NoBSG^&pPNrD=$WQh4!|)(TJ@%x)%d~vi-gMk zm6}!|sh9^<-j>SvHdEN@sWoaLm6IGohPP_(6u$+p;oBG?SLfu+ zPj)^x)(*HF2&Rc>ac;MTcIB5tLU{nhTz3F<;vkl?V0cOz_&>1BG>&l=%UVv9 z)yCpzYqg&_%apVi*A&WU7{^c!PhUeaEbk{n|SxV+Ln z>=1-#tL+Ad^NQY2G&^v0JJDyY9|)j|_^i2=G6)Tf*K9SbJ%f`C8cez?q4}{Ak>4J* zyRZbrOUlG-OS)4_2lO0ADWl`(4v6wchFX>?64A9ctf}~4_v&0OkbK-~2hIY;s~g#m z4*l(jtPrQhzPQJOb%JJ9YFh$YT2?GAE$IxmZ!DWsC$Pi=W5d8bC;2uFW;OPnlhXG$ zyElgWS{uApR+=FeP;``_RI6c6yCTqzac3^;m00vS#TP1v0{vYWGGh~|>IDNECG zW6un9wfw(#_&;Cas*;qs-_us}O-+)9RbLn^w?y;$4*5)ubpJgKyB_nl%=X3gH$Zz( z7J7?lrk7FC63-GjN3-UiV@8WNqsNgK7#Z7L!a*xfI&3P?w)}8%IwWsrl$dnIASzXw z=YJ#Sc(Uq0O!H*tR-ZpeEKnwv=+3F##Bnm@t8APeILy>-nq%4p4fJ>1I4ea~@iV@+ zZuB2po%+_9ai-_tJMRm=S=dyXPjT^JTNG^>|b8)5F`Em<4?2<*P$eewTo6wM+^#IKZfs>U+3nq9Hn@f6Z#E0hkX0`q9MwXEyDk_Q_J?AN`iyY2u?8=tAs0fuW;zLzp zxqV`gTp84u!6t#X9XT&UgX)3pga0~xV2~8!7S~==`oYukMUFM>3lpCZU`y0M_Z-X$ zNgEnCE|-87_I2>DvP&~7riLmKsr<~k*RXntOrK=|5*h}YF#+FGPlym)uSW!69fooH z4(P9Xhw=|7CD8z#c}Cs$?$uARHc+tLx4p$#SqJs#QPkwHxBB_rE*v5x7ibXkS{`3+ zp%#*1r`hNU9_JGTno#+GN4cmlR;p_YCInxQMDIH@WFG+sCRc{ln zIbQ0dq@k)7LC0)RURS%<;Zq}31VfV>N5=B>n7m|%D2-TUpJI1rD+bOpPLm&F`^REz z^%@R_qC3?62x)y{zOjds?LXY3hlpRt>=yh|&7OTs??)@zA6h$cIK5G>?y{Yr&W+H* z<$a~0g>mR&JoZkpGMu@+8;70wIyIzB3t4zQlRg;Xq-ml^)L*(4u|A}{ zSi)fXU|cqo)AIay%^G1<<4^ioDP!eYwLrcF%^69gHk2vPHK{6Bt9k($2cSueph2v8 z(*F5YdqU`h0s%Tj-b7Sj*k_9VgiZm^1_ztw>3}=T2v{%!o(r`k=DMSK@%!j6p^+M} zfnMTx`3%YRhY3j4Tmk`hJ~59r&s-sa0E0t$hZ3N1l&SyUprGvbdJuoTI>S(NsH`C~ z|E_hpVAXG<)->^bvm>AGJ*RY9_-Ev!?G#cDp~suQ8dx?>igFOB-Fp8c{ZY&=bxbgMnJl|yQQRKKuIZSk(BO+A!e96{{Htq_q>_+v!8v=-s`*8 zXJNlY%~=)?Oy8Dw9(x3-5%KLlC{qhoOM*ulr42^&t8D`hUwB^*1fYr=U}xyB$pIhu z4bvd(cWYKO*0Xx*hi}cUts_q=Ou(;5 zMMWd2ZWJ*3$pD7eCXqoXO*yIZLyYBHwPkU3z}F@yVPS93zt+#=?9zS7v335Hyn7P9pe^1+KUzIl_RoFu#&DP8(TJJb?yg|iVz zvd+&MLTDnoekF`UBm}lHJEjRkphpMpiPqreof827pB}?WtyCOty1Wmk z$yxF;DLKi)wCV{>Jv$iN;ZO&|aKhkRuY z?F>`!2FO+5*ybAfYi>o%TJGc~et(`cHbnO5@p`MBlOfX|Gt&1)16 z2cM)fZT5=cTZmn>CPY3Pb?|!BFj)T5L%+_YXQbqwSzJe)I9Gxe^@3E-uFEBE zFPp@m^f%s$>j=RMxMMMPc~OXBE3}XO>0KNsexk`7PsB^wd-K^m3a4X50&;T7Xw$wm zoi;pXW5*^mF`?9zZxsdx2)Dnq6mF02pyI*idlp+-h)DQCm;=YQN;$D>`1)%+(>-H~ zt?aGVj41}Mjn2vD$aE=aupNU4I4aQ`7&jL9H_W)j|(cwJ_$PlDeTU5NvyRbD@({F;G{rjf`V?6(e? zj_xPEALQ=K{#LfUy@a{=BC6}Vm1lvKu{Tn*#367<3!H(t$WdzzM#Pmtp30{YxIMp%wJ{wP&LI69&r3dkx)h< zw`9eFvVY3C7Zw8#O)dBLKgU$~zrK>R|F2H$0sw%g&|)P57&){I)|@;5QzqK}t0@_S zwuYdB!?sum$p4ia<2HF=x*^=>NT|t&6%}vYS~?}XwTbBwCeaMT;TXi1vNfPw^n$sD zkYJwUu!2SEEqdk;1Ol$YlIm0awh&RQQzEyc47|#L~k$m$!KxQHH z6!j0NjiaDhGccD3nwgAeKr@KIm+T&Dm5mNFrNANCI54h!WeJX_4HP!#M$3uE>eukR- z$0j^zLF}^hx&DoY#PGs=$PNuG`Nt*td_U>8=xEwk#MPuu4B2(9^FEyeC2hv6?KyRq zO2WW<9wN^Q!n}zfKSp4lI`KQK`Hf0q%8`cWIms*WmxI5*Qa9?D&lb;wfgO(|TR=9E zi~z=_4HVk6xR@OElY%mqb_bv9QYBe=AmazUH+b{4kvMaZ6MNlj#K2A%BhJQV_Seu= zP%zW#Hmd~vAHp-AIjy+#u&Fjj9keNPI6#p;IK@m$kG{p(mK-~V3u3ZuxpPeaF1CBB z)k9VaUJ74t^u$g9n`}2H&->hH-bn@yp#6_V&>U!c#zYbT?-llnvI5ISApr=&kh>b* z{13eXu&gq7)YM^L!|#4;VX4lo)M{Z#pJAlpS2cp{%)xsq1ULKPrLy_{(HQUNX=7+v z>@2&K>mR+3>iN%%J~_Wz1rH}Nh`-3F5%^3A1>1v{foC=Sk7jU(1Yg+ey(R8$w;2i> zEqfgastN1Y@tNl0U49s}xW1qbPvp$zjnMkDL2ecolpm}Q#sq)Yat5RSZHu*|i6TXmhVH@qK9Z+A^OHtq@CH3yU!)8eWC7;+C2q0$EGW8W3~!F62()a z>SEN9tEq9;SPwm}4g@uXjiz`F-Ss2Dsye&7!xnN;Kq23BW<-d#g*nq_;G_7AWQ4yWn)NXFC=NK~V$ zAuV6w!d08=aK`MjTH>yE-9o}GfDbb5ktCsXo}zJvJx~*f59Yffv7>rZECdx5*F4rp zUxWmn_p#!=A`Id>HBaC*qCC<7fHlp@hGtOpjxuA{>sj;*rCU#W(ef)>!%mKcQ5GA`??pnbT|XbziARdoRTf! zOX7#IDT~FPq0miAE|~$V;d6@%<`aFWx;oyHg~E=G!bux#PI4XKVMS$aOykdek`>+t zM#1d{J2u@7`vG?6jK*-_qDU~p4VkuWR&4>%b3R3ZEFI`ugj^W&0=LQ${Z(MQmU1hd`y)JnExQOO!WV0C;S; zoAgCleWXq`gQCn_u+V@a=i8e~J744pbZ{%;D2{#N>6)@*srWT*)h9Sm)8TC zG!^UfEtP=4^y~i9XqOaktjFFBqac>J0yy}DfQgtORP_LW8ogXQ8 zrC5~5`UcHU;z%cuxT5FNPeoKz1wH){U~3WE*MnoT#>DKBkWYH%}e`xsgo|G)kN3Xr+nOb`pQ^_>HoBHvihY z7WhRqaMSA0vD9KSy4|G$a%%F;6vs78Xh@`% z8Mp_rwL_H@Vz9ffp$3YTUzJ9dj$1O`C7ZqU-y0B)91$m-7bz*8upSVSYXLQw=-dp% zV+$=cN3tHNttIR?`goAy!e@9H-=j#odD6!kWwz(Yxsy;!8d*V^&NHLZ$+~1?lf9~j ztYAR=G$SlRo8VnK`}2gfg0i<}9&dn6g%P+gHh%j$yK7n`bOsW%dX`SLavlt3zv-iZ z-VJH(z96Ky3O;T#p{9iDxaOdr3KtdLBO8}Rs9s^)z?d^&IqPL|K)M^@^y zyvr|z=b($kDUb?-PhAwtu~<}E+>zbEa(mr(eH3A|`!1Henh%8=%U2rnc4cE21>^8g z;+q}*!Ul9VE1tD^saguqF>S(}M_Vi;+~LZ9n;uBN54s~reqSe&C6$gy2nqoSjAn5( z%5;#Q3j6GF&l)LGnga%{-@);70|`Tr!iptFw9T;hc z`*^#}4%EkL-)@Iy!Efzrjv?@cGl)$uYkL+4x@OEvI6Q9teD?PyF_{*Y5Vq8Qh8%Wj zlrGLKKnrHuwCGJ;pw(g@H7a*FUy$bHY6Sz718+;X-F60DigIiP@t34#MGF-*J~95a z*CE}wFbxu|Pz>dn$+zc9yz2mYF9FHF%N=M&V25Q8G5_# z7o5gAkL|d{dfp1>FGAlM0H z0i0NM(wS>BwV@mAw42ySeQ8G}CbIz4aH&q*`ThJCJiF_0%IvSk6oqOk6QT;B)o%?6 zla^*>YRl}*M%+8{j~X;4-@Z0-Y92BqA3z0{7Heey6y8w41CQ7Q5_qvR-ZyvXR3$CM zmXM*oQIlTSRDcZ^Kw}kdxaoG~Ew|++7?g z$#j2*bAn`6KKxLu9w*gp6moUVjmucvdq+LcHWebruXv^1iIe8--JZzBg;c#9j7NuM z%+wn;F8Sjs>KgfLKSvkI0JhYp?gQ~xQw{Y!ZI z03<%OEFvC* zwc;cRaf1DWKN8(ecA1Vj+93BOt(KV>o-HBawc7hRCk1ZXD+}woDDlP620>I=7N7LL zMm}Zjz`A9oMLUichel2u%XjpRn7mbW>n<;sclND_F@))IQ8rP6!e+zZU0^*lHn8He zqN2h5qGV!`92`L2{uv|}6 zu@N5E<9Z!I1}RM$h~jZbl5q+w7B@{}fe12?Sluhu4%G|FNVO(PAK)qTz1P`Z*^|G9E9Km zAu#Ei{o2zbW3ZPz-S64LBL*+G_JeoFq1yfuTIq$Gdg1OzOG~Zr-fLbxdBy?I2(;aE<~WrWdv<7EVdug)a2N+M17J209NCHmgRKnw&9mKenBvgv7Zw|u}VU&A&+a@B`%@=pB8+Qw>6;^mjJ;cR}CK-jewHKI6L#Y)rH z-3m`U7|Dh@Qcj^afhsjqLo`z{(e-N><%`!~Xaoi(07g5swT0bcrF#Cq!m$TC?>$&J z^AkW*pyALOXeYE7=E2B-{(yNgN?^pk@_(?|L946mC)FAYzn<_OaYZ~25ct8LnT3@I zofvi;0l{;3AtC*O-GkRl-_q+54*!P`14zR^Nn3F2gRuq#@}fNQA7$iIJKPp`D=U5? zOb~w_LQ1augX1q$!vzq<4$nRBz zFNL0#3G5*`L7SZ#nK}J0$@)0so62h$*(-K<*BAvlonIPz{kr@~KL+QyWUni1My_H2 z6aGeW?L$KP@H4k!J_)?TF>|@RTiRLevf($wD7v$Ip7YR z_`#j%xqtR>l7xaS9PpH+v9NHGu_9-gfKMe#HEpDxP0sMf%nqMF^f>Ar@?Fa-aYWW_ z$bL(jkjy;L1#g%=NKXvm=)$bRb|5?N z;8jO--r>`?aWQsLT5#r{p&R|Xmv0NiJL;Kt_$g{U*o8!T7n{AWUM*-&sTK0-BQ(~b zUYeo`Wn&}3B4$ogN^Ty6ALG(&MD)8A-4OQf=FY?`GdSyFMHny66A~9jrq$&2)Ht^w z>i36I4M}7j9JYU6B8>evtBNFai}U|jzZy$$g1$^)#^CxoT^a!OpoP-cAVKEAMb!Pq z!Zm@V=ggur-xHywAcq5dsQUCSIe1ebA4`8{t#evlytQx2UGUSviT{?yRjSY@^W#vx zgTTUrP2ydPCtx;fQ5VFuamUj9d-nZDDdY#o`!5x{%|2=Gd+q)r9Z#8^uHI z&)!Wcho>Lu;QeJ#*q-R!##vk;%#s7=M5i=rYiGkUozN`fLhSs~Pa{xj>Jz&I$4XZ$!@Zho>6yWH%htABlm_EApvr)H+ony&pgZha z!&jq8;0WdQ<)6AflgY6k)Ip;ekP^O@q}BL=muOd!>)oG+vY?eSu9}tavGTsEUJ?eb zH`ky1uTLHB@=o$E`+*JYIkAla;MY8fzvP3jV;U%?^CPBnE7y;KBO)ssMqsWdcN-ke zS(m5%juBa#@|p%GMpTo%7}W9Fal-r<>CPqn_6cFX!cU<6JO#OfSg~a}A~QKGv9l{< z_t$`?``Ry%PDCj}EC zcl010aZXwV8ho_Yl6LL#XBJOQ5x?;I8PS$BwGX(^uI5;-5G2R$3M{;OM$w5iF7@7J zN$&;_euQ5?r%l+GQAocXHRyagKnZ`W~(2tT8R0EAH4@O zp5RR*`F}zBe@3bpzv-_tv7+Lm5ue{3)R3=Yb7cuMJVe0t=$TGpM)ScAP~e_v_=q7= zzMR3|+<*rM8P0eiz??kqFt0y9^bwx6#Y8;|!9r+}?1O{kEA~m+bE_6+SA zXali_1e=Ne1>XI2G4{Drtuv4zikVa(M>8JDamwZM zq>+BzQ9`hK-p*|%c!_*h;_>SF_hDNDPVn!8kfXLsJ>;zR_16x`QYIU- zUQ1BjtA+0F`}H+RTFDzSLUAyZ%E$Ai`>-7ZT9ho<$}qhno4$sQ0X+rQvVLeiUOYSl%;Bfu~?${X2!&3Gk{97{>(}ENUtSlZYDAAq-4mjSsvV(AWbjc+#2?eD*C9&Y#vC4fJYPt$8X$~ zh~Wj}(F1byGyhAb0U$6byJS@PrN}+*+%t00BVc!9zRFCwGqkrQ{Ao8EdI`}xkSB0_ ztE$Q zFqm9kr<(Xj!XABge3mc6h(fxTYQ9C3_3<+*VO2smh6+VxUZ8=(^OILoXO`0sBRtoh zpu^AKV^G_kjLr_&vRz-y%kGH`B=3^@>h6{H**iUzW%BRZIrddHN*JgsWe9IG_J4g$ zxlp@5M%_aA^r!gb^p1~7tg4rz^U@3qM)WOV-fYi5%8HU};~2QnO=&+)eVATvyN8{)vu> zKwo;wU*UBoKCDO*V|D$?2IGVn;$cx=aB>;g-F<}K3?i#FcNj)WC1}C8FV_3!2o~C1 z9v%(W4Mnl-5xqDOrQwe`u2d0n-9({IS1WYa$(XfhIEwC1Lu(&HtJ7jH5ecsQA<7_vXa=&+2GU9&n2Q@5T&j}GR4Q+ zYSF9uE?1iqjzrXeScD3WE|x1r|Mw~*2hthaAGwqit?tXlXC(BSYGfz&^U2935SHI1 zH6#rKx&~pn8fu3Un?V3~5P;LCde#u~4XlSj9L3?dKN zG>0<%rboTCT5XKm-{*&tIp&)OLPeu&Ab0E6?4+mv~yDJvAmLcD$^h9Cm z?D9kALcjEFE2nGd#JDKxZy&+pt?Xcxm9C++bBMadm$u<~XY|+i`->ApyJt=ab8X+W zoUbU-l+m#El|+umVs=6m*0cyv2;pK!FAC+?i&CB5hN5m7gN81o`m013l2v4Ll`00I zVi>2A&tp<#=8o=m7HWeHIvkK8zVpdyRYGx6k2e29F-X+2*>*xT>q1g3pp9g$DiMBOu+=tD>;*7klH=q zTyd_95?5cNJ8z7Kh%UdFU#PvaS7wO+gZyON* zug;iz5UU~88p0wyx+kD8874j%EJs{+*b+?w=z?*R0hnR%Fq-JQFeQXXKpw^$hs^)6 z+DfF?A`)W;BgGV~isO>1IqY2y`;@;Kk!Iw6&hGSZQQ6I8AvEGNjsLt_mzo>;BA%zs zN^~~g=0$wO#U8Z|`qau4%j`O|jG9C)(;g~!D8?{f5+&Q3i%q!oZrxENez;pxLbF5`FAwV5Yc-oIbmn%b5n9~a^^49}-23(J2q+&q9$#JCB#zTs z1*~u0#fB`@8fC8gGO5Eann$0=o(K!rc+C+hK zuEK@*Xm2H&in(yV-tU51m?Vk9eu4@(F2x$#yW7I~skSW@gOS{ZJ6jf{;Wzcc3=$ut z!-B&`|8hZaE5bx6*TGZWs^j#s(hfJ^!^j>dq}_AzKqt1d%DG=~$oEK?Fzi<-(pPv* zz;^+_v*D(Llrr*A1pR-Xq&Klx-Q5Z55%H)34d#e!KB*0-0h2a=Bo}UP^zhI>8Lji^ z`WZd^d2m?%ikxpKCyo&OE@T~6^q?(srYGOSnf1jc036Rn%NeBC;fdu0y}Zh8Fe{(a z|8rG+QV|MF=BZv=1>Mm3WZfU;U`sD){PAcL5-H*aA>Z$vL#dJU9-Tg&$EV0b!X8fw zhc(ka&zqQ8kEF_|dEOjeMb2(3#K+Bd4f~lW?J?&68n7CRG40HrJm#5UD$a-8%F-zy z75fQ1-5h^mdFk$Oy>vZ1GzC?EXn0t&J>Ncf@Ot?>Z!{n&EZH|zw>5Si{}gP5tY~;;x#`qXGSK_J^$YE+(o1FlwK06T1Dz;>Hbz3<@41{E;7<=%B}6T;?oG9C zkoEvdr6z!ezzh{N&~|7#)DI>)48p2ViZ|`RWyRK9Eknpe@n$>aBXTmH4Sy9rW}zur zrO9^Y`M9L3wiN;=^c`S*00hXP0Fo;_0NFN|!uI=uNIt&*C8wmKeiDsf1Qf^${0$dm z!-pqBT^P5vVIpSpp8F_iTE+jPG9Mi)eC!s9PnSnwE%Jv2M$2>6m9b+vXKU&HvI6ls zIsdxLar`&&nw#Pl<5n;4M%`6wu1*v7F7&oU$R`C}C(75Lvn)T-&bZnSmBqW1_oF72 zv7&cn8f5I3{c4tJfe2PJTC4qD8|j)=+b2oxOFE56-Jx`6GpE+e0R_6DAdWB7j4KG_ z(9#GD3(ojMTZ<5q%e7=AwWygD~K_5>W=IA(Ve7#I6Wy*lR9+Tm+Sxkp`P=f4TGn~%S3 zVPD)hSM+;Oi1Mk`siepiH`X1yy<`KS2N=Hlz|?MAaW0tj^f#=i&pRZw0ew z<3Nwvru|Zi3T4WMip8c+wDRNI){it~2)v&kdb2ssS;o1QbNg#4eb-8vR2q3-6!CM@ z;xn1<15-2^EVS&u1sQyQK0lvPH-m-bVG$J5N{@?SoIP@$eq&sz z$(uCl{7?L$q{8d7li7z-zL2!3xV&2p!n!TWyKiT!&uPgXWgB}fx9pu6^J}<_Tgxk9kLdE*u4EZdNl@e-zi+Mxcp`bvmYd!#Mfdgs(x>qV&$xdFjE;crRX({28u?#bPWqe0!VB7vJa$I{l9-dEkr}Nwpun@V%p_zs`FJsIM+Yj~S_1 zBv{pDR$@FRA4_XXEPa4xL}4MbV@?{+`K3}6Jy7@pcG?4hdn-u=Dif}K`GF5DfAD?9 z?-sYJL=>f`x{vI$$U8KAP`E^^pP&n+RDlDQDiuifK7aM@&&3aYCuh(9ig}CpT?p=c zP@R0;aqL)NgWvw1a;Sin&$!|~?`c(W@{;oh@it*`1t*?d3ME}J2mxmQz<1l4K#5HRxj(f_E?ZzCYbK9O}U~mhX+XDy=fit zLq7>EA*o=f-P%KYKR|SbSt%TD)s}+PWCLkPzcI80{eocOg)tWG4WWW5e0^yR(z5Q7 zZRv@!=or#c;?@=FN}hW~mH9(FlDX45k5qRAHvk?&mi)G~_xa53tjDN!MVQ zGFBHX?z9JoI1{FTqzTA~GEe(wZUJzQKhG5x@btggDX1T`WT`NRzZO_wttes{CtSi0 zpx9~C`&=|_=x$bjYI1Iv+ex4gN6|XJX7eG4w1RbREXCnloBXF0-^MaxkrN+p32|pL zormMy{ts#|96$UCceYwVOv06S)YML&XwHQ=`O{U>_@35=zJj+|F7cP7HB~CjT_ZE% z6`ruya_$(#Wk6fue=#iI9i{r7O^ZUHUK(hZBSXn{9M)Mx5?J)t!j_y`TK6;JY0CcQ z5>WDlZCsx{ma3RS^f{XOvRn^-} zw@K4Z-sAqVx2e}Z=~pcuK$fS zDsV2%1AArK(503rZ8)D=R_qrE({6i8J3OL(x_h);NzXgr=u)0<2ZT+I$o_NV0}P0#x@LL2mg z(mHe9%rdo+tst+SBTLu%TnM5xKrZ}aiQDubtH~1-&vksvf$O{XMd#!OF7HVRQ(if2 zzc>7_F$tt$67O#dsVA?!ua|@f`Ru>63xf<^D?n`wD7-V*A*8Qb{j&?8*e_dP)0Yw9 z(``E0tw1=QiZzPxE!_~qK@3~ztMBK5xd!NN@? z3MUAe8aDfZ+t&tA62Qi?igm326XUiy$aEcv)D38b)qkj6@J`fY79YGkKbV-3^ZD66 zdJ6`;v#~u41v-s$8fVD=?5VSU4@{x%7SFibSUP+gH$|?S8UlqvkOYH)p^-j3ZJ`Qs_@|N4^=Hu#+8oX{>JUljpT&Lj2#fL*wI`nsEfFYp z>9rR{fJ|jjh1R}@;96)toybb(5f(jo%w;-umj-K(m{GUbjM@dgp0L>&y4;C*762 zPgpr$m~hFd6jdZAf_Y!mRpYsi#Bb^jI{!#Y3_FH`wetP&B5)JSlEx2WpG9;R6+*h6@2;T!`~iUL&EuDbN`J6NY54U=|~o5D^A%HL2SOqv60F zkR#4XydTj9MATQYH2U2&unSZjozog9yFJrjMGLJ5_jg@nV!Y4yhf)VkQeqRY-VgL~ z2NupeoXzUUc$^-gC|o|a;(m2GecSWV`L-u#Y`iOM(*s}qFnVI#a*O|{3A(f#^pKoh zeGY-aIJY)?4tN~2vbR-UoKkQN_A@?=!iAO&3>f#=LCIKBY>Bz3hTAN+gDz>ruL~;k z6&yXjxp&M#{EIi=CwwT^jzH6T-o*hJ;FLd8JPa~i+jzNzeqxF&NHAD`9XG}`-)}@s z8aBvJ3K^ka&SN6Gm6dqtKB>^lRdLLlK0E$i^G6c=V>Pb&sYu++_+&MxYL1@rgcjKk zdJ>H8!gD!LewBCB>7}4tYbtli{q%F?DgK$37-6RML4tjgl5|HT69;vNjzZB^-(LBFTIM()x_q-36jKe}b>@*Im&8dQzKzUEmME z9nLVUcksYHg&y+XMN;i$dOt1Y2tM<|k!+PrFY_MQp$gI>*BTEp0~Sd_{(-B*u-}wc z*|7{Rq`k#Q05DI~Y1aNX(+dj`-G5@YPOmQeO68YTX>k21*K1dFl`2EI&Kd8jt$k0i z#3&269N%CaEh~XVzIb0OaZH&31V%TN`{|z}T?|62!jo3y11em!RWUB`j?Y(vF+J@U z3?!jT<9uS}5P8+ibhJ>fk?w#?>7RBKD5%skVNe^z_^S~W?X7o0m% zlD~OcU0dwMs&evsFT!cOH4~omu=3d1e-AtIZLzaa2Ur%}6lG=TLj5pYTrDWKTDv{= zZ$ki4MHaUi)p}D;UqV18cR-KU>+2Q+tT!fqYRRV}|75ir*km6@Ni>Q6Z0LF!&E+!Z z_heOA&lK>PM!$a;_=#IXEqMDxsrMLq@OLlin*$MWXGJ=Uny2dVtfkyPf|pxd@+d$0 z;q`}UVaDyxF~0giWo05qXVMU%pkJ3$ydUS>d%hQ6p-DutGGn`ueq}VGQKW_YQqA!l zl~SczN?~xDpPy65%k4PG9H3bOAgI&i02DP;NHe4T+huNu_Kfvhmbh9Q5joPIq^*=F zEF;p92y4t}2t7*{?P;#E z9*>49#*LwTbJJ8*?RTGl^b*_|!|BN~w-}4t^pWVOL;pg}!RpX@eLW^%sqF+T#&jBymo38&seddgH$og`ca#! zvJaoR@M|KWs|rQ$)dR!twMY~&-+W*)z8OS?^ZRF+=7FY2mA%<^(8KSbp0j#4o+Z~} zBpFl9{-hA#nLAR=F@pi+O4Z8@>hcKranAkI<(j+VS$T+D4h|IF98|2Rq1=Wq-6tk- zwo3rBoT4Uex*8^75=cx957_Ag`tVr86yJjKp5&m|_6Pco?^6AU+T-up5NDMyU<$*a zYtr}t`rx;(@PinDLG}M9KA_Y8`{9pA%Y2sQLq=|fH7x)%p(tf=Qq^H_ zS8%w-pOH&`$hi?kDE(*hD-oPRnLta+V6|p`W_B5|cCsS{FKKJtq{+t6GqU};UDDxx zLo%Z<`IRE-?N@3I4=O&adR{{N46<00y0f?|j7g;4AebrqO~W;tCAX7>!(Jf^uy>R@ zKjPglRyPM=dpC=y+t&0X^d{=Fp9gEZA)P|8ORk;wwMu_IZRyCakm-aog|Jzi%D7M_ zT3wmExAv7Woi^>o#*ZZesP{DkR@4)k7VSKN~&S_k7w!llJk*db* zk8~>P)LR$Zl?YSbFw5J=dYmOlzW0DAawxT(L}7428_eOi=T$fQqIh)d-JVNmi67+M^O_@xoZ>gD$rUS%X%oC<=kt(@y!>c?ePq0^V_#14)yy1AL^mPl7KF8LWsh?5T)*hfD2btZ~S9H)brU9p_z{Pom>HLlq6LK3nzU zMK3OEWUXj&=}Nl~|K7J8!m3zI4%oOPup*MA_jQw%7YY1wuDuwR`TF84WQbx}M-^(n z>7_zG^Pc~9FDgLMEMKbfYraZBr-ndqdh{sMP}41V1@R9g*kPO6C%R8!+p!^-T5q%G zPqO@IF9ozys=R9HK__mxQ#0ttHP&Ih4FMobN1QYHY}iS?O#tl!wwc^Mh{ohQx>Uc} z_h3DCKn3O|Y@A+fjln+%M->i)u$hN3X)@K@8%<8ghS`% zBmhi~oVF-dQduEp&o!oHs8>OuUBaS>=uJyH`WW`XAz6g-Nncn72A_6om;L zoOz4(6#Mxmga_;c92<4^gLNzW8*nikCf7)xstF8npSE#sB^KB~$RrCp!%v zB~ZNiB^UMDZhE5lRp-OmiQw+KTh+N%l>OG9%O%QdudmkF&vdpgKw$d$`wrJo`-Lgp zUF=o#bFgTtsCmR5U9Qqk{IjSHr##HVZrF{zk?nv0oXK#!6uc}aYW?XGYx`F)1ib($1< z;eo<(g>UmzyMpgP;1Htj+>v(xfDKEQvsX{hG;Ev^rGfR&x9koFYw?T38BSBwfq5Zd z&+6@nc;%kd^fAght|g;p3ng9EB#}^#vxp}K8#BBgW+kD-PQa3da)bu;wQER$m$oj@g9Xr>^7JHCgI6$9FFH2<=Le zx!E|E2%!i^aK{-$H`ShB=l#D(OYZc&H~tB$=_34~XubyuC_TWoF4)Q3D&_tu{s}!?0}llt_LIgPKzm~5W}D(9GdMidw$Z>tz-)TP7yh%g8cgF}M7 z`C#};z~XjYB^k3~>BrdAe=7!9Z?&YgN(*pjr=g$J>doFx5GZK~H}m#2aAJ1mS;E&9 zT*@5k4cA% z*m$_1??tgGQpvGcPg#7%4x#2UzKL2mzCo!dn`V!aHNVBEWzuNUKS%bTZPNYWjJ{8H z=IIHksaf#ZW+|9Wzl|g$H~=$>z$ac8C~lMkUo`e-?N_~<<(Moc6^dIBa~YLxS@q79 zs_%_^ADMFLxVTczO=Hy0*ZUD@DK)2k1!VE-FPgR@tT4H#giIbYUitqd7cmE~?}cCy zL?ej$t?dZvd4M;8wvBf0fKNYsj(+%p7Hp5*wsH0fZ%sj|?`;4I0JK3~W_}~2u;KW6 z#Y{(}oMle|jJj4Flks?2pM zUGhzsfouY2|L0-1!}Sv)oiYW4mCJ{d-<^VyFmAVvTBQJh?=K*?DWqnclYJl zrfEDFnO|klQ|f)-%^zCSvA`5z|Wl0t`Dj z=~+8;^v{yhlPr6~60){suJ&*ZgCZNXc8Yx{1OHY?3)Vs>vz-k_WwvwKu6VYFIHWVv z$`Y^gQ9);Yxj^nNxn~iBb_gP{UQWd3NHUBZm_=`}T2rSS;TwP*Yp2pe002N59R1G9 z@SojF#?|sJ`&@9zd3LLMpx5{iq1JI@G6CbLyWX~ksm;HPZzmHkXYNmxT7hDmfK!!4ouxrMT}pAM6!+rp?xn@8#ogWA3GVJ5+}$C8eCd16cb)u@Kj4{bX7;SL_qsoS zO~$gq6>L#m#pfXSA;fy0SZ6VNyv&DcI(l#CI!xdZ>EI>%Pq*h)t?;UiEDEc+wezDaGHRH%D3iblys~PsT!bFV3dMCmk~X)!qD7!ibM9 z0eDD=bE3#F2-^GaDgUYB($#j?3-#snaAHgNj zyMIRGO={lcx}}mSC#gY1!q|ovvOl#tCi8u%wjkfu(4aO#8f~1hS&K7CS_LFJrc7i(ZiAw+NGV1h~)tJwz|~ z^x^28LE^?Fmi$#nrNCCm$@B-~nn?p*5u0Q1tcZLP_~?31;+gYdPikQhtFx-;?$nbgybA^vKx>#8~GBWc_R-%%tWD zNGCX5*009wzFa={r(|`C*_}}X|z`YKrB7QBAt8=UtKz*e${?5&SQK8y&44obp{G}Pd<}Cf0ldf2A;a`%zzel8ip>`0a54PJdDSjN#ElbONnJ{3R6>yZ-V#j;zYaPCx)`LToV4QezX0UcIo!4h}bAUYGq*l zxtwv-$~$tChM#W~nvgqzqi1BGv_)Khfjb*W*~O%^$r{AQrhV7`DpSZ1gu49bfevP{ z^S5XM`MIT=zo0;^U#|_XeQAshiS2arGz=fz zDN$jWVQ($7INy9sUc@(>J2b31um>oLXvO(&jB>62uQ#y&pWbi)E5Yg|RsZ6_k}a#D zMNl_b!$Tu1Jt77+YmoyJZB6}Vu*GdYg}!;^CZ{)owJASO^D{CG8D9G-wQ(YcPN`8U zZ}!5@J2QLiNhBi#f&et>k}rX*0H5qFc>0Q1+5c)hi#-oU#)!-nQjXnP-JA&m%%^^S zQ@0ViF#9ldJtu9(qQ7k2A60j+NiG{>lF{06gd?C>;VWdVAz6(-thqTd^X??e6Wu9Y zMQe|NqxqCkOfKOWw-W|Jx;v^8R~;1_XMdhbq%BKU=k|X0oHyP&^mVolT?~%-eaXa% z9L|2&2`Lm@y>VPHRVHObM*o#&tiguqN$c#T<1#m|tf$^dlqx>3IPg&vf6zPS!EU-B z6uPFApz-F%OIGMpOJ#Tu41hz7>Zk6Y_0YT#t3=p6ku zb`FfZCQna#SS1c|DZwd#XCyFeYIzddsC_{$907}12OV0v)QiCATjSgEFFjCY(h8qR zS!w(D;dKe;qjtU6=sNk;slEF>1Lm_a=2zi6TaW3z2Rz$lQ%RxAUcn_(DClF}_nA2X zmIi>qaH!t#T1~m%oHvWF(dslS-*U|OhJ4bT=z!n7y$Nm8)umZ(>^E;0+9fw*$G(o_ zok3*!_K9_*%pIVfbY#A^&8351|4IDZ?1|jzY`=9L^o$$qv#0guQK-}Ac;rREFGG7L zXVR4!KH&E3#HnNG4qx@F;AF%)1pWKOdrqa#$Mq4Z_3F*|Qzb_^RO)7!o2-MHf!|3& zP}cgfC;cLgARUFfQ z+Z_9CFhaTKH=U>%=`xf-jM^reii4oaGw&Ic6Dey*)E`5=29s{%vA$U@?DE>=J`_2$g`}s2WE1AtB5+VD zSu0#gon%YXU8Y}Rz$EFs&Ik7a*~u_13Frfv_MmY5GM~cO!+nnr)0sb9g%vSU^t7Q| zGoGtf`K4i0T!|N?y-+R5OTP`ZE7AJUKmeMTlI7)Zh6|p|`BGT2Im?{2-ZrX3DB{)D zWvuV7m!S%4u5r=!#=aX`WF$5?ox5Luw#krMERX2Wow!$p)(X|zR(+UT`~;7n7&kPS z->(xUv*fuJQPIECVv?nZzY4y(n_(IFw3^1p=R`Z<3lf`rr9)r zBJpiGKc(D0R*XS(ky@ujICg4OC*KY*SS;h0WXKL+3Qp|2D~=e>1)xROrSQMC1z?P< z6v7clZ=^2mgd*6T?`hgP-IResX=WL~X`5>Eg)ELk%(M8*(#Es;S2wNtq%3iHE5%-} z%HadG$%2V>F;^}RC2#KpA431tbxsb@mQi7+dfw#%x+6WK2jDu+@<`E+fTbfY_PLCn z+AAvd8WesxdVh8X{sIgkSGzB-eP;2C6^8=VT;B~n`GilLcnpzeAEYLe?}T0(rzjHO zCcy}ppPQLo``4QweCBSPS=nzJ={innS~N63RJ*QM`@As~_-mfYq^i7GHnDo4-OZoY zA*L2TdgJfz)Ads=QS-zt`Am#*jZX@G8XOxH@fQX#967x@1`N!tJ`wW~I*A`PPP*^i zSp0qM0Q3GhFQ*Ab$uSsw?KLtR4O!MVqz`Cnev#dTM+LM>3r75M)BH4K31D@r#T(^5;64L`~J1KV4#k#S!(-( zSYVFzEuP#`H3ckgGv*J07Crn!H(@`&kpH9t|4G&w=Y}-odh{K2ylU$#kPoz7*DS9tJ>P z1|kdm_9?*fO;iud%{0Z>fD1xdv5pXZXynvqDGF)ANh4Em2Az4@e9xWVvQBv{UBC!H z1L18ic~{7j2LKTru*m>GzylyMuQ73z82&fLw2A(TiB`+ai2IzRhiW-9Nq#{_w(5PB zNwsegkLn6**tfEEeHri?x#iZ!LmYJ|eG-_-ssS|*S*^Hy3W7$d!aQSQfu>}P7X(6L z6RB;xH2p&$X1>bZT-bSm>hS?1yDU@EO7X$jE++nxT$Jig@yRx-b@e&3s18YM`=ta6 z^7n#rhCy_bjF}m4TC*bXBV3xojPPRhvNAVi+2Vxcyi@qZkks3@5M^@7DbB*=qfSlV zF()W>&1QS+E8(=N(Y5|rf$pg*(8%R)c_?s|)pUo3dxjZwmnL$A!ZG_>_{a07vwUy+ zFe3XQJ1b8rb^jnz0D~cT2YzVLt{ias-=D&R=+T(g$ zOz&ot@yUF9LF{;ucp#)1eE;lU-=QW#m}YA57CFya!}nvAm-;zd)x#8Q<3A9gy=XaOswOdmuSjZV01;Yu6EJK?g*V>9F z$dTjSw8*`QTy9>)Q4S+ou@t=1+IdyOvx~qjiOg?Xeteo(7P6E;U(J!^G~@H=qwzrm zD?Dp*3>bzoZlDjypdMLHll_JK5lvkpUl^B8A64G)ce?Ytf6M{jJ(-h>biT>*SE}XO z^WWLrh`X32Jb1;;eAq0w%R$SNXFJ$)Nq4$lA-(8{^11&iLaY=w%iwimkr;6&1icNy zB(J4zB0pMuK%d4LUT8tK?nweVp_F6ulI-C+E~|cw=%Jm02gyA0uYWqUucZ1F>MHi^ zv|d1qFBvHUE#0B35l;K@QetOBb4E>julULfi3VYW!qH68LAbL%iLF~;I($Da`Jk0; z6X8}Cx<5q>E^uwWS4v-Ni;z6kTx}DI_GDmw7m3~rtNHOS-^0?C@pQ4jA;f;IE&X3; zgQm!8Ri3U0ZWB=m4K$0p8S_fGp3Y}ocuBCC?7<#b_E5Fo?4!3S$T+Id;4yYe`R5#Z zvs|0xsN{uNlhG6M=ZloXX$X6u!j0smM{eJRL33#i;sG^M=Q4Pf8m}%(-A&<4a60fS zT!aF6a)6cvn_eW8kShGwGaePX=2&ydS4$V94P~%BtU~Z~nuC zWiH!lQ(xkNsS%-}Uu{#HG4G;ZZRSW)<_&K<6|=;4?}GFF?qC=SzyD1qL%IP-{NZuT z4Jrgw0eCel>O8Q-4e$2&6TO{1b4|(u&5^$bD74GBF$O@}Z4Q{n+nb2*!0u*GUwHj0 zSYDnVWE_0HK)kcQmlZKt!v*k3eehrBVjpk1)HG1VY%Tl{kYrZ&_{M-)m|^K2&jM8j zX%lDwGhY=&U=4WLe;>5#KdWaZ=15E!vKZwmn`b{;r#t#*q_rgILyaB>yy3v>yM*%SA!P^SJ?P!Lcc$32%|m^RB5#R-)&)z~uJD zQEin7;oo8w#~ui1-(vMD97L+XCWB>u}M|IGoa(S>&Jq^37AyTXqXItHbHB3W~h zzjWQeXf&kjRbSUjE?s7_Zi)e$_&X<-kSCwuoW(LI-2g%F!0Vx@n}{8v^#o*bfdws} zMw7#8-FZt~0fjUCV93eyswyg@#;oc=r@bmEBEt+&o04$__euwe2EwB+b^W+pZI@%k zSnDbcrEkzGl$K=pO<|1lps9n2&9d}VN*5piuricZPSr&Z_?bFKPk|2TQidI14h8Yw z{w)C@-5a0w1aZE-(|BpboN9Qde2~(*+5$5^L zj5BUR!#`6#+Cr%J#y0osuu}(vco~Q?yNBIj{R-So8C-`MY_u}u+{;UYF-IKB+$9!N z{-bz2+%7fipzgK1_V0dc*K;0|AHI7&%#!PM&T=XFte9hg^n(UuKw2A~QP)1v+gko< zm6MaZM_R z;%=`?v-*f%Z=M9dgJ#NiK9ZIbi(*5;!n;L=E;Cy|Hsb%68npjUYB+>_?2M>J20WO= zPzf!7mP5N?6BTjLj(>6kEXE-mxc!NfSJdQk&>t~g!I`S>U4x@~{LoOYvdQP(P~gRe zaN-^(!`WNzw~>~BT|`(%*l57ZwCz-j4|)O8zxIASItP^;0E7gg zD_vw!DG$z0_1WpLL(o=NNCMyJOSg}J=wU{N=vI_3k|jmUyPG#$#S~QHp>gs#4H`gb z)+F1cN*iel`)Ni}<4u7l6M33Y>lX~JY&ZhCY*eH-fL?gOh4R0oWyDA{fM$VM!haI^ zudSe4FCE><4?Nx=wTJfmk+pctqz_prwxIgTw?P~EO-FSxNaK9IX!1s!7E{+Nxo+Nx zYL;YQb2j@ATQiNLyw!rgd56E7(|*i(k|FYtS3kjnrZ>rJQ4h{5N|E}o^pxm^s=0Mu z%#Nr2iRxP7pdhC^7dYG~IVvix>}IaK?FXb2b9x=kvUhQ77r4j}KaCU82oP%dU0%Hy z15oLQnOEB*(XsQda9!ObO)l-h-_*SZK4}Bq12lW25n9K*>A2(9n zIbxOs)p_4#m6Z==hRIv4H6hN_+8k5DEwjR<$M0xkM@P?0Pf%2w_@38!JavEb$#Gj- zBt4FYx+iSf*GYe6@D_};4pNw*g98KvW3U_2Ai!>{Po1g39=TYvU8B@jMLtM5*?e84 z-{vIgP4QYr00d20Rp|Ac{v|)}H?Ga`tC1-Hh#3E%(6tiFI7@4T=A!t`ui3qC)4 z7uE$AR(mUwJ~0iLt|VZ!Cw;>|e{}WU(&?E}>cp6AJPjRt zk>GZn-8Ev4?CK<85{!e?{1_K`3TgR`%N->KP zVEEVUN_T`SaA)81k@LI5=Ex++>@)wTTF@j2B@yhI8a-$G15zk#+_cxC#j@arPbUZK zZI6+-FcEpWC(AeD*0uO!(MfGd!!C1@s~WiNp(t>+cz8AWM(MrI=V%*zP~A1nr77H{ znVU~?LUHi8F!hB0-lES54M9M~<+mZT@6;jr=m6n=jg^$TY&C&Wn@LY^36?OcOH*>k z*x7%(!40iPf|ZQLtV0TUZN@jbfAya)BL8zTU;(|m@Y_THMTB=SLZ@gxK)s;!-%SPx z5VNYZq{+lHKy@U*H~dRm)DlClhp%UBMXH;$F!y%_YjoyRYhU=j$NpP+bZ@?6`m3Zq z!f!Qpg)81N<9ruK%8P+n+C^;Zzvo}>#}cv9HP+}0N53VwnbQ8Prtf?~^1jCF@b&r$ z)?abWCDUtit1q}vy6qhOyPBr>U3Xb;z3?H^-Bk~NMp*6h*S(9luz8XYe_1uzRIH4T z{7RpQ^o7RTtX_v7^fj-GZ1wyyTNQ=uGH7f0MKM^qO-yc59+-odzM0FhwM=nnget_G zCsf$89Ncs3VOxb(f=0+S=ax=8i-LzeY$p&>> z$S~iDzye^H4d0bP1kgnQz#=Wbm53?-w{+^?CMi7WvUUV90$aJYtt^>xBQU(Yy+H4r z1VK&VZ7&WN?h9S1wtclIP7y32Ho^zcBDOuN8EDa_v&;6zNQdnDS;2HWcK9!W^LuW> z^tl7{rL*7n2hW2__RXS&c^BaZ4)`-I#!Y&3rWVj7J`@E>2T55eE98~oqdilKzORL?5H*k`j>c_{?HURd?;G@rG zOpNdY;3c6OdA_Zs!$*M~E4t;yoB#Gs2gyUwR;xqca;v7G?NeQfz=nZ-7dI)0_a_Q3 zE(J7R)4cbH;=udPy{zsoA4ALYJt*If1%NZeW1zS!8OG~(!$w}`%^iIae%7Tj?YC~= zOW0uSt4P7oW+s4;{T|Q-2Q%SgL0@1Udy<J0JL(TytN%|9|vla1c_p&CVwG^Je>5_5ZD zh#@DH=%NH(s>J^xM%wErXaZ(p?Bk$&|6vt&OywlLRnlo@s z@o`il)EDCk(^B0yvC8s{G3MthCBCom4X|3!g-xBDrkH`{N0Pw{lb^1?PthYRk}bmt zYvyS7wQY!A5~_=SsmRX8zVt4{%04IlA}IhVHVZt|dQx|$(<`d5Q(zwhrsaL;^b*wL zg$j!gt~AMCdUsH0K1>W9AwXP0Y@r{L&b7|5PaOLb+lf-UNmIj96~vL@)ECO_-He-<4A0K`q~mDLioTg!MMgwKAC-6ms9x3NqxbQIgJE*DAda8{s>VQ6c^v<= z7^FFIXBa29v2Y0QPkhIxuKcGn5N!>*%Ni|efoKlicV)mbjL!~ZbHV*Wp(tioHT$=} zL=BYMQxwc>^u*~EyySlYdA-lXpY~qJszzE>8l6DaO^RAK*)Mq~?L1YbRh-g%6=iiE zx|NmPW*pk;jrr?zko}&{rnc)cquag$vHQwG+p!N46?M*}8?3q#yNfoH$etM&kjmgB zVr@#bS8ggR8>RVMT`iBOO83tR`R*GhXl*l05!$mlMzY|;DDS_7J|CiTZkMWKza_xh zD?<9W4|%sjxLF0T8$O)pCBQXXekGF-wBKqx4j*Q1Kld^RJCmr}2 z*AH7?{nTDalzJ~ZA3394BW1_l$@&bP0il*)m)U5qY3~`|4}l%~hB~{xevB_!7r?sL z^nf5=akGRhxBEA3bHj`u^M<@{j zUx3iX-<+1G=jmKhuyLCa0H9wPA^UIwJ_ZgzSKRe)G!0M*2OGmFP5jSgVwAZzpl4*M zNM$W$4%E8%^{s6=PkO%GtiqL3q8C;H&331K{+ zcBfZPmFJS=z3u1Yzc0obZrTJI=gpvV{L0krMMsWQCUXv~N-`a%rPG1KxY)|*aQ>#K zNy%iEf~xcU2@rRwgpX&@BmewQk`$3W2_cy@wD0C@xEpJB)1=BWeQ@b%Xq+8s-bi=m zkhr82`3;S>HmTUy&(v{IUu!ba!CyZHDL20R5?tf1)lKzBYN|HEQ}?BrU|yzAQX?DM zUkS3NedeIPlXv5=;#NAgZ^;0d(7k;!ZwlI)KJIvZ_`9vXF0D} zE0bJ*U9R~vrk?J?uzmTtGV(F}zUNeD@Av)`#~i|h1`l(hYGum|b=?7GO7g@|@X`lr zjyXp1SZ@-Qp)U$G@>;JGLpFldFS@a1#&d7b8bS&!5OU0e&0?Rv~4=d+`Bs}LIn>#B_C8Jv0D?>zkFP# zR#qamU-!KzrUs;+?EDLl>oHvJUD+Ae+kQC^8DwFT%xF zf`irXq(Dj|9GgwYM<$V-QoKfla#J>;2zJw4d3Y1(O+nR9(xQ(uM682PJoqM3JruCo zFpEVLnX4r*LfHaVzJD*lF^2!QN&#K6^0{tMg%|>~*@mI;R9rIX&qI};5U#3z%_w+C zJA^zqVYa>bZJcTNaQb17P-6v4&?$94&Nt0`yMyFge>QaO{AZBU^+#L_{yqqIe?UWH zI-NqTk-ySwc98c6b|BQiRUvCMECm9QXRNn7?^vGJU7O$0T-(Aq-sZ{5Ff!SAI6v%~ zH>*3#@F8YblcXfaZ_|%s-1OtUUp@P%Y___iQ|0dtBoR@H^UJh`&eBdy@-utqQ_bye zw0BG{;vUy#jmI7-$pzc#5&KCM$pR&BUL0Mwuxm?XKkI=E%@`Q> zrI5|`1>wFEVV@Ou`Hq*pg1bVc{fq3bAps0;*Xs|Uho@@vmc#~tXaz~v;Z#jHNg{#u ztfl2ahME|7Gz_7*D-S7^T%KWUR zi-t7_!CEah-f*5Z0Q`m%<}w5T+z#G0=fZ^o-XfaBRmWqa{98c4CiPcCPXhm+hS6dX zu}UUVtTZ~kJcV@TDQP!J9g&~3S~o)K(Ryh>_O9>9yGF zo?_&EnTK}v%+TNjk~2mzxAEdmcJ6i;lQLEW2@Yl(@wPQn6LZ&{WJ|M;nHXGTxHaff zH*fu+ef3nHtZW#sE2h4xDxQ^; zI{9-cv)EZyIK*P1db+j-t}1M}GellI$#8ZZfcF&^RLJrT935VpUi`IpW<8B(1K*ss zUgSKH2WB??_y|)VCldL=gj{)$>M1U#4IbaSjsjgN_@t=?p197DvQX*2Y zLU>2|eZ16}iz!Bt&DgUPDuD+buteM5SoVtbr{eH@XV zC@ElaQXVKs1<+|GVh>|9NdY`k)(KY

    QPgSGLjrWFQ^@D2* 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 diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/main.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/main.ogg deleted file mode 100644 index 00386542585004519b83d0821209732559c08b75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181880 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 g6iOL-skN5aaa_9IX$447=vvY)nu@@ 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%0A<*prJ8 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 diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion.ogg deleted file mode 100644 index 4efa58c23dcf9c865446dba09fe49184594ef732..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17025 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 diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion_rumble.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/nuclear_explosion_rumble.ogg deleted file mode 100644 index 835045fe8d345c2dba43a0eeb01270f782139807..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 205471 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

    vAj-r9Pb;a98j1Hw=_qB%|v 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 sDmf@BSO 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 z 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

    )is*4I1z=V}DIOUrGdb0Jr%LjS@2NdZ?rn7Y~H0 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 G7T^Y6?Ww2$ diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/ringing.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/ringing.ogg deleted file mode 100644 index d6a5ce440107bd37cca547bf05062be92fe69f54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48319 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 diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/rumble.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/rumble.ogg deleted file mode 100644 index bde039ecb033879f2ce255ede3fdef62552672e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 127937 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∋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 TE9DS@?>RnI^x4VhN$CFpeQ0e$ diff --git a/src/main/resources/assets/createnuclear/sounds/explosion/shockwave.ogg b/src/main/resources/assets/createnuclear/sounds/explosion/shockwave.ogg deleted file mode 100644 index 4703edd3bd6cf3c892079f6d0b3c5f97ac573651..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 214452 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

    v0 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%0A(1P=2)Ssh0Ck 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%0DdH;06&2T8>R? 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Ȍq;ROIjPk7p$GC2f9y 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

    9zs>UE67snn% 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