From 9afd7fa9263ece739c45ffdd4cdf23f73dd9937d Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Fri, 26 Apr 2024 10:59:00 +0200 Subject: [PATCH 01/15] 1.20 port --- build.properties | 4 +- .../models/block/black_psimetal_plate.json | 2 +- .../assets/psi/models/block/conjured.json | 2 +- .../models/block/ebony_psimetal_block.json | 2 +- .../models/block/ivory_psimetal_block.json | 2 +- .../block/lit_black_psimetal_plate.json | 6 +- .../block/lit_white_psimetal_plate.json | 6 +- .../psi/models/block/psidust_block.json | 2 +- .../assets/psi/models/block/psigem_block.json | 2 +- .../psi/models/block/psimetal_block.json | 2 +- .../models/block/white_psimetal_plate.json | 2 +- .../java/vazkii/psi/api/ClientPsiAPI.java | 5 +- src/main/java/vazkii/psi/api/PsiAPI.java | 2 +- src/main/java/vazkii/psi/api/spell/Spell.java | 5 +- .../java/vazkii/psi/api/spell/SpellGrid.java | 11 +- .../java/vazkii/psi/api/spell/SpellPiece.java | 48 ++++----- .../psi/client/core/proxy/ClientProxy.java | 12 +-- .../vazkii/psi/client/gui/GuiProgrammer.java | 2 +- .../gui/button/GuiButtonSideConfig.java | 26 +---- .../gui/button/GuiButtonSpellPiece.java | 2 +- .../client/gui/widget/PiecePanelWidget.java | 6 +- .../client/gui/widget/SpellCostsWidget.java | 2 +- .../psi/client/jei/tricks/DrawablePiece.java | 2 +- .../client/patchouli/SpellGridComponent.java | 2 +- .../client/patchouli/SpellPieceComponent.java | 2 +- .../render/tile/RenderTileProgrammer.java | 3 +- .../psi/common/block/base/ModBlocks.java | 27 +++-- .../psi/common/core/PsiCreativeTab.java | 97 +++++++++++++++++- .../vazkii/psi/common/item/base/ModItems.java | 2 +- .../spell/constant/PieceConstantNumber.java | 15 +-- .../common/spell/other/PieceConnector.java | 14 +-- .../spell/other/PieceCrossConnector.java | 18 ++-- src/main/resources/META-INF/mods.toml | 4 +- .../assets/minecraft/atlases/blocks.json | 9 ++ .../psi/models/block/cad_assembler.json | 10 +- .../assets/psi/models/block/programmer.json | 4 +- .../psi/models/block/programmer_active.json | 4 +- .../psi/models/block/programmer_shape.json | 8 +- .../psi/models/item/_standard_colorizer.json | 6 +- .../psi/models/item/_standard_sensor.json | 4 +- .../resources/assets/psi/models/item/cad.json | 6 +- .../models/item/cad_assembly_creative.json | 2 +- .../item/cad_assembly_ebony_psimetal.json | 2 +- .../psi/models/item/cad_assembly_gold.json | 2 +- .../psi/models/item/cad_assembly_iron.json | 2 +- .../item/cad_assembly_ivory_psimetal.json | 2 +- .../models/item/cad_assembly_psimetal.json | 2 +- .../psi/models/item/cad_asssembler.json | 2 +- .../psi/models/item/cad_battery_basic.json | 2 +- .../psi/models/item/cad_battery_extended.json | 2 +- .../models/item/cad_battery_ultradense.json | 2 +- .../psi/models/item/cad_colorizer_empty.json | 4 +- .../psi/models/item/cad_colorizer_psi.json | 2 +- .../models/item/cad_colorizer_rainbow.json | 2 +- .../psi/models/item/cad_core_basic.json | 2 +- .../psi/models/item/cad_core_conductive.json | 2 +- .../models/item/cad_core_hyperclocked.json | 2 +- .../psi/models/item/cad_core_overclocked.json | 2 +- .../psi/models/item/cad_core_radiative.json | 2 +- .../assets/psi/models/item/cad_creative.json | 8 +- .../psi/models/item/cad_ebony_psimetal.json | 6 +- .../assets/psi/models/item/cad_gold.json | 4 +- .../assets/psi/models/item/cad_iron.json | 6 +- .../psi/models/item/cad_ivory_psimetal.json | 6 +- .../assets/psi/models/item/cad_psimetal.json | 6 +- .../psi/models/item/cad_socket_basic.json | 2 +- .../psi/models/item/cad_socket_huge.json | 2 +- .../psi/models/item/cad_socket_large.json | 2 +- .../psi/models/item/cad_socket_signaling.json | 2 +- .../models/item/cad_socket_transmissive.json | 2 +- .../assets/psi/models/item/detonator.json | 2 +- .../psi/models/item/ebony_psimetal.json | 2 +- .../psi/models/item/ebony_substance.json | 2 +- .../models/item/encyclopaedia_psionica.json | 2 +- .../psi/models/item/exosuit_controller.json | 2 +- .../psi/models/item/ivory_psimetal.json | 2 +- .../psi/models/item/ivory_substance.json | 2 +- .../assets/psi/models/item/psidust.json | 2 +- .../assets/psi/models/item/psigem.json | 2 +- .../assets/psi/models/item/psimetal.json | 2 +- .../assets/psi/models/item/psimetal_axe.json | 2 +- .../models/item/psimetal_exosuit_boots.json | 2 +- .../item/psimetal_exosuit_chestplate.json | 2 +- .../models/item/psimetal_exosuit_helmet.json | 4 +- .../item/psimetal_exosuit_leggings.json | 2 +- .../psi/models/item/psimetal_pickaxe.json | 2 +- .../psi/models/item/psimetal_shovel.json | 2 +- .../psi/models/item/psimetal_sword.json | 2 +- .../assets/psi/models/item/spell_bullet.json | 2 +- .../psi/models/item/spell_bullet_active.json | 2 +- .../psi/models/item/spell_bullet_charge.json | 2 +- .../item/spell_bullet_charge_active.json | 2 +- .../psi/models/item/spell_bullet_circle.json | 2 +- .../item/spell_bullet_circle_active.json | 2 +- .../psi/models/item/spell_bullet_grenade.json | 2 +- .../item/spell_bullet_grenade_active.json | 2 +- .../psi/models/item/spell_bullet_loop.json | 2 +- .../models/item/spell_bullet_loop_active.json | 2 +- .../psi/models/item/spell_bullet_mine.json | 2 +- .../models/item/spell_bullet_mine_active.json | 2 +- .../models/item/spell_bullet_projectile.json | 2 +- .../item/spell_bullet_projectile_active.json | 2 +- .../assets/psi/models/item/spell_drive.json | 2 +- .../assets/psi/models/item/vector_ruler.json | 2 +- .../en_us/entries/items/spell_bullet.json | 14 +-- .../cad_assembler_bottom.png | Bin .../cad_assembler_bottom_top.png | Bin .../{blocks => block}/cad_assembler_side.png | Bin .../{blocks => block}/cad_assembler_top.png | Bin .../ebony_psimetal_block.png | Bin .../psi/textures/{blocks => block}/empty.png | Bin .../ivory_psimetal_block.png | Bin .../{blocks => block}/programmer_bottom.png | Bin .../{blocks => block}/programmer_side.png | Bin .../programmer_side.png.mcmeta | 0 .../programmer_side_inactive.png | Bin .../{blocks => block}/programmer_top.png | Bin .../programmer_top.png.mcmeta | 0 .../programmer_top_inactive.png | Bin .../{blocks => block}/psidust_block.png | Bin .../{blocks => block}/psigem_block.png | Bin .../{blocks => block}/psimetal_block.png | Bin .../psimetal_plate_black.png | Bin .../psimetal_plate_black_light.png | Bin .../psimetal_plate_black_light.png.mcmeta | 0 .../psimetal_plate_white.png | Bin .../psimetal_plate_white_light.png | Bin .../psimetal_plate_white_light.png.mcmeta | 0 .../psimetal_plate_black_light_blue.png | Bin ...psimetal_plate_black_light_blue.png.mcmeta | 0 .../psimetal_plate_black_light_green.png | Bin ...simetal_plate_black_light_green.png.mcmeta | 0 .../unused/psimetal_plate_cyan.png | Bin .../unused/psimetal_plate_cyan_light.png | Bin .../psimetal_plate_cyan_light.png.mcmeta | 0 .../unused/psimetal_plate_magenta.png | Bin .../unused/psimetal_plate_magenta_light.png | Bin .../psimetal_plate_magenta_light.png.mcmeta | 0 .../unused/psimetal_plate_white.png | Bin .../psimetal_plate_white_light_orange.png | Bin ...imetal_plate_white_light_orange.png.mcmeta | 0 .../psimetal_plate_white_light_purple.png | Bin ...imetal_plate_white_light_purple.png.mcmeta | 0 ...simetal_plate_white_light_spring_green.png | Bin ..._plate_white_light_spring_green.png.mcmeta | 0 .../unused/psimetal_plate_yellow.png | Bin .../unused/psimetal_plate_yellow_light.png | Bin .../psimetal_plate_yellow_light.png.mcmeta | 0 .../{items => item}/cad_assembly_0.png | Bin .../{items => item}/cad_assembly_1.png | Bin .../{items => item}/cad_assembly_creative.png | Bin .../cad_assembly_ebony_psimetal.png | Bin .../{items => item}/cad_assembly_gold.png | Bin .../{items => item}/cad_assembly_iron.png | Bin .../cad_assembly_ivory_psimetal.png | Bin .../{items => item}/cad_assembly_psimetal.png | Bin .../{items => item}/cad_battery_basic.png | Bin .../{items => item}/cad_battery_extended.png | Bin .../cad_battery_ultradense.png | Bin .../textures/{items => item}/cad_color.png | Bin .../{items => item}/cad_core_basic.png | Bin .../{items => item}/cad_core_conductive.png | Bin .../{items => item}/cad_core_hyperclocked.png | Bin .../{items => item}/cad_core_overclocked.png | Bin .../{items => item}/cad_core_radiative.png | Bin .../{items => item}/cad_creative_gizmo.png | Bin .../cad_creative_gizmo.png.mcmeta | 0 .../{items => item}/cad_socket_basic.png | Bin .../{items => item}/cad_socket_huge.png | Bin .../{items => item}/cad_socket_large.png | Bin .../{items => item}/cad_socket_signaling.png | Bin .../cad_socket_transmissive.png | Bin .../textures/{items => item}/detonator.png | Bin .../{items => item}/dye_cannister.png | Bin .../{items => item}/dye_cannister_inside.png | Bin .../{items => item}/dye_cannister_overlay.png | Bin .../dye_cannister_special_psi.png | Bin .../dye_cannister_special_psi.png.mcmeta | 0 .../dye_cannister_special_rainbow.png | Bin .../dye_cannister_special_rainbow.png.mcmeta | 0 .../{items => item}/ebony_psimetal.png | Bin .../{items => item}/ebony_substance.png | Bin .../encyclopaedia_psionica.png | Bin .../{items => item}/exosuit_controller.png | Bin .../{items => item}/exosuit_sensor.png | Bin .../exosuit_sensor_overlay.png | Bin .../{items => item}/ivory_psimetal.png | Bin .../{items => item}/ivory_substance.png | Bin .../psi/textures/{items => item}/psidust.png | Bin .../psi/textures/{items => item}/psigem.png | Bin .../psi/textures/{items => item}/psimetal.png | Bin .../textures/{items => item}/psimetal_axe.png | Bin .../psimetal_exosuit_boots.png | Bin .../psimetal_exosuit_chestplate.png | Bin .../psimetal_exosuit_helmet.png | Bin .../psimetal_exosuit_helmet_sensor.png | Bin .../psimetal_exosuit_leggings.png | Bin .../{items => item}/psimetal_pickaxe.png | Bin .../{items => item}/psimetal_shovel.png | Bin .../{items => item}/psimetal_sword.png | Bin .../textures/{items => item}/spell_bullet.png | Bin .../{items => item}/spell_bullet_active.png | Bin .../{items => item}/spell_bullet_charge.png | Bin .../spell_bullet_charge_active.png | Bin .../{items => item}/spell_bullet_circle.png | Bin .../spell_bullet_circle_active.png | Bin .../{items => item}/spell_bullet_grenade.png | Bin .../spell_bullet_grenade_active.png | Bin .../{items => item}/spell_bullet_loop.png | Bin .../spell_bullet_loop_active.png | Bin .../spell_bullet_loop_active.png.mcmeta | 0 .../{items => item}/spell_bullet_mine.png | Bin .../spell_bullet_mine_active.png | Bin .../spell_bullet_mine_active.png.mcmeta | 0 .../spell_bullet_projectile.png | Bin .../spell_bullet_projectile_active.png | Bin .../textures/{items => item}/spell_drive.png | Bin .../unused/cad_assembly_psimetal_red.png | Bin .../unused/cad_assembly_psimetal_yellow.png | Bin .../unused/spell_booster_ebony.png | Bin .../unused/spell_booster_ebony_active.png | Bin .../unused/spell_booster_ivory.png | Bin .../unused/spell_booster_ivory_active.png | Bin .../unused/spell_booster_psigem.png | Bin .../unused/spell_booster_psigem_active.png | Bin .../textures/{items => item}/vector_ruler.png | Bin .../encyclopaedia_psionica/book.json | 2 +- src/main/resources/pack.mcmeta | 2 +- 228 files changed, 325 insertions(+), 237 deletions(-) create mode 100644 src/main/resources/assets/minecraft/atlases/blocks.json rename src/main/resources/assets/psi/textures/{blocks => block}/cad_assembler_bottom.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/cad_assembler_bottom_top.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/cad_assembler_side.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/cad_assembler_top.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/ebony_psimetal_block.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/empty.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/ivory_psimetal_block.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_bottom.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_side.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_side.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_side_inactive.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_top.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_top.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/programmer_top_inactive.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psidust_block.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psigem_block.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_block.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_black.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_black_light.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_black_light.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_white.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_white_light.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/psimetal_plate_white_light.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_black_light_blue.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_black_light_blue.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_black_light_green.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_black_light_green.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_cyan.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_cyan_light.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_cyan_light.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_magenta.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_magenta_light.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_magenta_light.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_orange.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_orange.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_purple.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_purple.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_spring_green.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_white_light_spring_green.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_yellow.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_yellow_light.png (100%) rename src/main/resources/assets/psi/textures/{blocks => block}/unused/psimetal_plate_yellow_light.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_0.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_1.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_creative.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_ebony_psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_gold.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_iron.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_ivory_psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_assembly_psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_battery_basic.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_battery_extended.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_battery_ultradense.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_color.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_core_basic.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_core_conductive.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_core_hyperclocked.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_core_overclocked.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_core_radiative.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_creative_gizmo.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_creative_gizmo.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_socket_basic.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_socket_huge.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_socket_large.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_socket_signaling.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/cad_socket_transmissive.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/detonator.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_inside.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_overlay.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_special_psi.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_special_psi.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_special_rainbow.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/dye_cannister_special_rainbow.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/ebony_psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/ebony_substance.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/encyclopaedia_psionica.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/exosuit_controller.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/exosuit_sensor.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/exosuit_sensor_overlay.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/ivory_psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/ivory_substance.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psidust.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psigem.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_axe.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_exosuit_boots.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_exosuit_chestplate.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_exosuit_helmet.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_exosuit_helmet_sensor.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_exosuit_leggings.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_pickaxe.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_shovel.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/psimetal_sword.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_charge.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_charge_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_circle.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_circle_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_grenade.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_grenade_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_loop.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_loop_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_loop_active.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_mine.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_mine_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_mine_active.png.mcmeta (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_projectile.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_bullet_projectile_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/spell_drive.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/cad_assembly_psimetal_red.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/cad_assembly_psimetal_yellow.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_ebony.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_ebony_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_ivory.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_ivory_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_psigem.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/unused/spell_booster_psigem_active.png (100%) rename src/main/resources/assets/psi/textures/{items => item}/vector_ruler.png (100%) diff --git a/build.properties b/build.properties index 9451e2501..7df46c218 100644 --- a/build.properties +++ b/build.properties @@ -1,9 +1,9 @@ #Sun Apr 09 14:41:44 WEST 2023 mapping_channel=parchment mod_id=psi -forge_version=47.1.3 +forge_version=47.1.47 jei_version=15.2.0.27 -build_number=101 +build_number=102 patchy_version=1.20.1-83-FORGE dir_output=../Build Output/Psi/ version=1.20 diff --git a/src/generated/resources/assets/psi/models/block/black_psimetal_plate.json b/src/generated/resources/assets/psi/models/block/black_psimetal_plate.json index 49bdfc486..23f9af4eb 100644 --- a/src/generated/resources/assets/psi/models/block/black_psimetal_plate.json +++ b/src/generated/resources/assets/psi/models/block/black_psimetal_plate.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/psimetal_plate_black" + "all": "psi:block/psimetal_plate_black" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/conjured.json b/src/generated/resources/assets/psi/models/block/conjured.json index 226ef98ab..c87a8d5d7 100644 --- a/src/generated/resources/assets/psi/models/block/conjured.json +++ b/src/generated/resources/assets/psi/models/block/conjured.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/block", "textures": { - "particle": "psi:blocks/empty" + "particle": "psi:block/empty" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/ebony_psimetal_block.json b/src/generated/resources/assets/psi/models/block/ebony_psimetal_block.json index 08822e5f7..7cb74dfb3 100644 --- a/src/generated/resources/assets/psi/models/block/ebony_psimetal_block.json +++ b/src/generated/resources/assets/psi/models/block/ebony_psimetal_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/ebony_psimetal_block" + "all": "psi:block/ebony_psimetal_block" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/ivory_psimetal_block.json b/src/generated/resources/assets/psi/models/block/ivory_psimetal_block.json index 91b489d17..7fa8de66d 100644 --- a/src/generated/resources/assets/psi/models/block/ivory_psimetal_block.json +++ b/src/generated/resources/assets/psi/models/block/ivory_psimetal_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/ivory_psimetal_block" + "all": "psi:block/ivory_psimetal_block" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/lit_black_psimetal_plate.json b/src/generated/resources/assets/psi/models/block/lit_black_psimetal_plate.json index f948eded3..daf2d2038 100644 --- a/src/generated/resources/assets/psi/models/block/lit_black_psimetal_plate.json +++ b/src/generated/resources/assets/psi/models/block/lit_black_psimetal_plate.json @@ -1,8 +1,8 @@ { "parent": "minecraft:block/cube_bottom_top", "textures": { - "bottom": "psi:blocks/psimetal_plate_black", - "side": "psi:blocks/psimetal_plate_black_light", - "top": "psi:blocks/psimetal_plate_black" + "bottom": "psi:block/psimetal_plate_black", + "side": "psi:block/psimetal_plate_black_light", + "top": "psi:block/psimetal_plate_black" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/lit_white_psimetal_plate.json b/src/generated/resources/assets/psi/models/block/lit_white_psimetal_plate.json index dd3ed382b..00ee805fd 100644 --- a/src/generated/resources/assets/psi/models/block/lit_white_psimetal_plate.json +++ b/src/generated/resources/assets/psi/models/block/lit_white_psimetal_plate.json @@ -1,8 +1,8 @@ { "parent": "minecraft:block/cube_bottom_top", "textures": { - "bottom": "psi:blocks/psimetal_plate_white", - "side": "psi:blocks/psimetal_plate_white_light", - "top": "psi:blocks/psimetal_plate_white" + "bottom": "psi:block/psimetal_plate_white", + "side": "psi:block/psimetal_plate_white_light", + "top": "psi:block/psimetal_plate_white" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/psidust_block.json b/src/generated/resources/assets/psi/models/block/psidust_block.json index edcb0383c..8d58c730d 100644 --- a/src/generated/resources/assets/psi/models/block/psidust_block.json +++ b/src/generated/resources/assets/psi/models/block/psidust_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/psidust_block" + "all": "psi:block/psidust_block" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/psigem_block.json b/src/generated/resources/assets/psi/models/block/psigem_block.json index c1dc9a18b..327ba116f 100644 --- a/src/generated/resources/assets/psi/models/block/psigem_block.json +++ b/src/generated/resources/assets/psi/models/block/psigem_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/psigem_block" + "all": "psi:block/psigem_block" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/psimetal_block.json b/src/generated/resources/assets/psi/models/block/psimetal_block.json index 558d81588..8b133e124 100644 --- a/src/generated/resources/assets/psi/models/block/psimetal_block.json +++ b/src/generated/resources/assets/psi/models/block/psimetal_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/psimetal_block" + "all": "psi:block/psimetal_block" } } \ No newline at end of file diff --git a/src/generated/resources/assets/psi/models/block/white_psimetal_plate.json b/src/generated/resources/assets/psi/models/block/white_psimetal_plate.json index 598f5a144..838f30cab 100644 --- a/src/generated/resources/assets/psi/models/block/white_psimetal_plate.json +++ b/src/generated/resources/assets/psi/models/block/white_psimetal_plate.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "psi:blocks/psimetal_plate_white" + "all": "psi:block/psimetal_plate_white" } } \ No newline at end of file diff --git a/src/main/java/vazkii/psi/api/ClientPsiAPI.java b/src/main/java/vazkii/psi/api/ClientPsiAPI.java index 6445fcd3f..428e0b1ab 100644 --- a/src/main/java/vazkii/psi/api/ClientPsiAPI.java +++ b/src/main/java/vazkii/psi/api/ClientPsiAPI.java @@ -8,6 +8,7 @@ */ package vazkii.psi.api; +import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.resources.model.Material; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.api.distmarker.Dist; @@ -22,7 +23,7 @@ @OnlyIn(Dist.CLIENT) public class ClientPsiAPI { - public static final ResourceLocation PSI_PIECE_TEXTURE_ATLAS = new ResourceLocation(MOD_ID, "spell_pieces"); + //public static final ResourceLocation PSI_PIECE_TEXTURE_ATLAS = new ResourceLocation(MOD_ID, "spell_pieces"); private static final Map simpleSpellTextures = new ConcurrentHashMap<>(); /** @@ -44,7 +45,7 @@ public class ClientPsiAPI { */ @OnlyIn(Dist.CLIENT) public static void registerPieceTexture(ResourceLocation pieceId, ResourceLocation texture) { - ClientPsiAPI.simpleSpellTextures.put(pieceId, new Material(PSI_PIECE_TEXTURE_ATLAS, texture)); + ClientPsiAPI.simpleSpellTextures.put(pieceId, new Material(TextureAtlas.LOCATION_BLOCKS, texture)); } public static Material getSpellPieceMaterial(ResourceLocation key) { diff --git a/src/main/java/vazkii/psi/api/PsiAPI.java b/src/main/java/vazkii/psi/api/PsiAPI.java index 113e666c5..a2a40d210 100644 --- a/src/main/java/vazkii/psi/api/PsiAPI.java +++ b/src/main/java/vazkii/psi/api/PsiAPI.java @@ -106,7 +106,7 @@ public static void registerSpellPiece(ResourceLocation resourceLocation, Class clazz) { registerSpellPiece(id, clazz); - DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> () -> ClientPsiAPI.registerPieceTexture(id, new ResourceLocation(id.getNamespace(), "spell/" + id.getPath()))); + DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> ClientPsiAPI.registerPieceTexture(id, new ResourceLocation(id.getNamespace(), "spell/" + id.getPath()))); } /** diff --git a/src/main/java/vazkii/psi/api/spell/Spell.java b/src/main/java/vazkii/psi/api/spell/Spell.java index b4a5bae1a..a486e8db2 100644 --- a/src/main/java/vazkii/psi/api/spell/Spell.java +++ b/src/main/java/vazkii/psi/api/spell/Spell.java @@ -8,6 +8,7 @@ */ package vazkii.psi.api.spell; +import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.nbt.CompoundTag; @@ -45,8 +46,8 @@ public Spell() { } @OnlyIn(Dist.CLIENT) - public void draw(GuiGraphics graphics, MultiBufferSource buffers, int light) { - grid.draw(graphics, buffers, light); + public void draw(PoseStack pPoseStack, MultiBufferSource buffers, int light) { + grid.draw(pPoseStack, buffers, light); } @Nullable diff --git a/src/main/java/vazkii/psi/api/spell/SpellGrid.java b/src/main/java/vazkii/psi/api/spell/SpellGrid.java index b3e1208e2..b580806c1 100644 --- a/src/main/java/vazkii/psi/api/spell/SpellGrid.java +++ b/src/main/java/vazkii/psi/api/spell/SpellGrid.java @@ -11,6 +11,7 @@ import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; +import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.nbt.CompoundTag; @@ -45,15 +46,15 @@ public final class SpellGrid { private int leftmost, rightmost, topmost, bottommost; @OnlyIn(Dist.CLIENT) - public void draw(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void draw(PoseStack pPoseStack, MultiBufferSource buffers, int light) { for(int i = 0; i < GRID_SIZE; i++) { for(int j = 0; j < GRID_SIZE; j++) { SpellPiece p = gridData[i][j]; if(p != null) { - graphics.pose().pushPose(); - graphics.pose().translate(i * 18, j * 18, 0); - p.draw(graphics, buffers, light); - graphics.pose().popPose(); + pPoseStack.pushPose(); + pPoseStack.translate(i * 18, j * 18, 0); + p.draw(pPoseStack, buffers, light); + pPoseStack.popPose(); } } } diff --git a/src/main/java/vazkii/psi/api/spell/SpellPiece.java b/src/main/java/vazkii/psi/api/spell/SpellPiece.java index 2b19cd77f..5949bb334 100644 --- a/src/main/java/vazkii/psi/api/spell/SpellPiece.java +++ b/src/main/java/vazkii/psi/api/spell/SpellPiece.java @@ -12,6 +12,7 @@ import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.blaze3d.vertex.VertexFormat; @@ -22,6 +23,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderStateShard; import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.resources.model.Material; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -279,19 +281,19 @@ public void setStatLabel(EnumSpellStat type, StatLabel descriptor) { * To avoid z-fighting in the TE projection, translations are applied every step. */ @OnlyIn(Dist.CLIENT) - public void draw(GuiGraphics graphics, MultiBufferSource buffers, int light) { - graphics.pose().pushPose(); - drawBackground(graphics, buffers, light); - graphics.pose().translate(0F, 0F, 0.1F); - drawAdditional(graphics, buffers, light); + public void draw(PoseStack pPoseStack, MultiBufferSource buffers, int light) { + pPoseStack.pushPose(); + drawBackground(pPoseStack, buffers, light); + pPoseStack.translate(0F, 0F, 0.1F); + drawAdditional(pPoseStack, buffers, light); if(isInGrid) { - graphics.pose().translate(0F, 0F, 0.1F); - drawParams(graphics, buffers, light); - graphics.pose().translate(0F, 0F, 0.1F); - drawComment(graphics, buffers, light); + pPoseStack.translate(0F, 0F, 0.1F); + drawParams(pPoseStack, buffers, light); + pPoseStack.translate(0F, 0F, 0.1F); + drawComment(pPoseStack, buffers, light); } - graphics.pose().popPose(); + pPoseStack.popPose(); } @OnlyIn(Dist.CLIENT) @@ -299,7 +301,7 @@ public static RenderType getLayer() { if(layer == null) { RenderType.CompositeState glState = RenderType.CompositeState.builder() .setShaderState(new RenderStateShard.ShaderStateShard(GameRenderer::getPositionColorTexShader)) - .setTextureState(new RenderStateShard.TextureStateShard(ClientPsiAPI.PSI_PIECE_TEXTURE_ATLAS, false, false)) + .setTextureState(new RenderStateShard.TextureStateShard(TextureAtlas.LOCATION_BLOCKS, false, false)) .setLightmapState(new RenderStateShard.LightmapStateShard(true)) .setTransparencyState(new RenderStateShard.TransparencyStateShard("translucent_transparency", () -> { RenderSystem.enableBlend(); @@ -310,7 +312,7 @@ public static RenderType getLayer() { })) .setCullState(new RenderStateShard.CullStateShard(false)) .createCompositeState(false); - layer = RenderType.create(ClientPsiAPI.PSI_PIECE_TEXTURE_ATLAS.toString(), DefaultVertexFormat.POSITION_COLOR_TEX_LIGHTMAP, VertexFormat.Mode.QUADS, 64, glState); + layer = RenderType.create(TextureAtlas.LOCATION_BLOCKS.toString(), DefaultVertexFormat.POSITION_COLOR_TEX_LIGHTMAP, VertexFormat.Mode.QUADS, 64, glState); } return layer; } @@ -319,10 +321,10 @@ public static RenderType getLayer() { * Draws this piece's background. */ @OnlyIn(Dist.CLIENT) - public void drawBackground(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void drawBackground(PoseStack pPoseStack, MultiBufferSource buffers, int light) { Material material = ClientPsiAPI.getSpellPieceMaterial(registryKey); VertexConsumer buffer = material.buffer(buffers, ignored -> getLayer()); - Matrix4f mat = graphics.pose().last().pose(); + Matrix4f mat = pPoseStack.last().pose(); // Cannot call .texture() on the chained object because SpriteAwareVertexBuilder is buggy // and does not return itself, it returns the inner buffer // This leads to .texture() using the implementation of the inner buffer, @@ -346,7 +348,7 @@ public void drawBackground(GuiGraphics graphics, MultiBufferSource buffers, int * to draw the lines. */ @OnlyIn(Dist.CLIENT) - public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void drawAdditional(PoseStack pPoseStack, MultiBufferSource buffers, int light) { // NO-OP } @@ -354,7 +356,7 @@ public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int * Draws the little comment indicator in this piece, if one exists. */ @OnlyIn(Dist.CLIENT) - public void drawComment(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void drawComment(PoseStack pPoseStack, MultiBufferSource buffers, int light) { if(comment != null && !comment.isEmpty()) { VertexConsumer buffer = buffers.getBuffer(PsiAPI.internalHandler.getProgrammerLayer()); @@ -363,7 +365,7 @@ public void drawComment(GuiGraphics graphics, MultiBufferSource buffers, int lig float minV = 184 / 256F; float maxU = (150 + wh) / 256F; float maxV = (184 + wh) / 256F; - Matrix4f mat = graphics.pose().last().pose(); + Matrix4f mat = pPoseStack.last().pose(); buffer.vertex(mat, -2, 4, 0).color(1F, 1F, 1F, 1F).uv(minU, maxV).uv2(light).endVertex(); buffer.vertex(mat, 4, 4, 0).color(1F, 1F, 1F, 1F).uv(maxU, maxV).uv2(light).endVertex(); @@ -376,15 +378,15 @@ public void drawComment(GuiGraphics graphics, MultiBufferSource buffers, int lig * Draws the parameters coming into this piece. */ @OnlyIn(Dist.CLIENT) - public void drawParams(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void drawParams(PoseStack pPoseStack, MultiBufferSource buffers, int light) { VertexConsumer buffer = buffers.getBuffer(PsiAPI.internalHandler.getProgrammerLayer()); for(SpellParam param : paramSides.keySet()) { - drawParam(graphics, buffer, light, param); + drawParam(pPoseStack, buffer, light, param); } } @OnlyIn(Dist.CLIENT) - public void drawParam(GuiGraphics graphics, VertexConsumer buffer, int light, SpellParam param) { + public void drawParam(PoseStack pPoseStack, VertexConsumer buffer, int light, SpellParam param) { SpellParam.Side side = paramSides.get(param); if(!side.isEnabled() || param.getArrowType() == ArrowType.NONE) { return; @@ -405,11 +407,11 @@ public void drawParam(GuiGraphics graphics, VertexConsumer buffer, int light, Sp if(count > 1) { percent = (float) index / (count - 1); } - drawParam(graphics, buffer, light, side, param.color, param.getArrowType(), percent); + drawParam(pPoseStack, buffer, light, side, param.color, param.getArrowType(), percent); } @OnlyIn(Dist.CLIENT) - public void drawParam(GuiGraphics graphics, VertexConsumer buffer, int light, SpellParam.Side side, int color, SpellParam.ArrowType arrowType, float percent) { + public void drawParam(PoseStack pPoseStack, VertexConsumer buffer, int light, SpellParam.Side side, int color, SpellParam.ArrowType arrowType, float percent) { if(arrowType == ArrowType.NONE) { return; } @@ -432,7 +434,7 @@ public void drawParam(GuiGraphics graphics, VertexConsumer buffer, int light, Sp int g = PsiRenderHelper.g(color); int b = PsiRenderHelper.b(color); int a = 255; - Matrix4f mat = graphics.pose().last().pose(); + Matrix4f mat = pPoseStack.last().pose(); buffer.vertex(mat, minX, maxY, 0).color(r, g, b, a).uv(minU, maxV).uv2(light).endVertex(); buffer.vertex(mat, maxX, maxY, 0).color(r, g, b, a).uv(maxU, maxV).uv2(light).endVertex(); diff --git a/src/main/java/vazkii/psi/client/core/proxy/ClientProxy.java b/src/main/java/vazkii/psi/client/core/proxy/ClientProxy.java index bbff4b83d..07f1fb54e 100644 --- a/src/main/java/vazkii/psi/client/core/proxy/ClientProxy.java +++ b/src/main/java/vazkii/psi/client/core/proxy/ClientProxy.java @@ -99,8 +99,8 @@ private void loadComplete(FMLLoadCompleteEvent event) { }); } - private void modelBake(ModelEvent.BakingCompleted event) { - event.getModels().put(new ModelResourceLocation(ForgeRegistries.ITEMS.getKey(ModItems.cad), "inventory"), new ModelCAD()); + private void modelBake(ModelEvent.ModifyBakingResult event) { + event.getModels().computeIfPresent(new ModelResourceLocation(ForgeRegistries.ITEMS.getKey(ModItems.cad), "inventory"), (k, oldModel) -> new ModelCAD()); } private void addCADModels(ModelEvent.RegisterAdditional event) { @@ -109,13 +109,7 @@ private void addCADModels(ModelEvent.RegisterAdditional event) { event.register(new ResourceLocation(LibMisc.MOD_ID, "item/" + LibItemNames.CAD_PSIMETAL)); event.register(new ResourceLocation(LibMisc.MOD_ID, "item/" + LibItemNames.CAD_EBONY_PSIMETAL)); event.register(new ResourceLocation(LibMisc.MOD_ID, "item/" + LibItemNames.CAD_IVORY_PSIMETAL)); - event.register(new ResourceLocation(LibMisc.MOD_ID, "item/" + LibItemNames.CAD_CREATIVE)); //TODO models - //ModelBakery.UNREFERENCED_TEXTURES.addAll(ClientPsiAPI.getAllSpellPieceMaterial()); - //ModelBakery.UNREFERENCED_TEXTURES.add(new Material(ClientPsiAPI.PSI_PIECE_TEXTURE_ATLAS, PieceConnector.LINES_TEXTURE)); - for(Material spellpieceMaterial : ClientPsiAPI.getAllSpellPieceMaterial()) { - event.register(spellpieceMaterial.texture()); - } - event.register(PieceConnector.LINES_TEXTURE); + event.register(new ResourceLocation(LibMisc.MOD_ID, "item/" + LibItemNames.CAD_CREATIVE)); } @Override diff --git a/src/main/java/vazkii/psi/client/gui/GuiProgrammer.java b/src/main/java/vazkii/psi/client/gui/GuiProgrammer.java index 11569f856..b4d2637a7 100644 --- a/src/main/java/vazkii/psi/client/gui/GuiProgrammer.java +++ b/src/main/java/vazkii/psi/client/gui/GuiProgrammer.java @@ -332,7 +332,7 @@ public void render(GuiGraphics graphics, int mouseX, int mouseY, float partialTi tooltip.clear(); graphics.pose().translate(gridLeft, gridTop, 0); MultiBufferSource.BufferSource buffers = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); - spell.draw(graphics, buffers, 0xF000F0); + spell.draw(graphics.pose(), buffers, 0xF000F0); buffers.endBatch(); compileResult.right().ifPresent(ex -> { diff --git a/src/main/java/vazkii/psi/client/gui/button/GuiButtonSideConfig.java b/src/main/java/vazkii/psi/client/gui/button/GuiButtonSideConfig.java index c1c8ebe01..2bf695e45 100644 --- a/src/main/java/vazkii/psi/client/gui/button/GuiButtonSideConfig.java +++ b/src/main/java/vazkii/psi/client/gui/button/GuiButtonSideConfig.java @@ -42,12 +42,6 @@ public GuiButtonSideConfig(GuiProgrammer gui, int gridX, int gridY, int paramInd @Override public void render(GuiGraphics graphics, int par2, int par3, float pTicks) { if(active && visible && !gui.takingScreenshot) { - int minX = getX(); - int minY = getY(); - int maxX = minX + 8; - int maxY = minY + 8; - - RenderSystem.setShaderTexture(0, GuiProgrammer.texture); SpellPiece piece = gui.spell.grid.gridData[gridX][gridY]; if(piece == null) { return; @@ -60,27 +54,15 @@ public void render(GuiGraphics graphics, int par2, int par3, float pTicks) { SpellParam.Side currSide = piece.paramSides.get(param); if(currSide == side) { - RenderSystem.setShaderColor(PsiRenderHelper.r(param.color) / 255F, + graphics.setColor(PsiRenderHelper.r(param.color) / 255F, PsiRenderHelper.g(param.color) / 255F, PsiRenderHelper.b(param.color) / 255F, 1F); } else { - RenderSystem.setShaderColor(1F, 1F, 1F, 1F); + graphics.setColor(1f, 1f, 1f, 1F); } - float wh = 8F; - float minU = side.u / 256F; - float minV = side.v / 256F; - float maxU = (side.u + wh) / 256F; - float maxV = (side.v + wh) / 256F; - //RenderSystem.enableAlphaTest(); //TODO Alpha Test? - BufferBuilder wr = Tesselator.getInstance().getBuilder(); - wr.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); //TODO Check if QUADS is correct - wr.vertex(minX, maxY, 0).uv(minU, maxV).endVertex(); - wr.vertex(maxX, maxY, 0).uv(maxU, maxV).endVertex(); - wr.vertex(maxX, minY, 0).uv(maxU, minV).endVertex(); - wr.vertex(minX, minY, 0).uv(minU, minV).endVertex(); - Tesselator.getInstance().end(); - //RenderSystem.disableAlphaTest(); + graphics.blit(GuiProgrammer.texture, getX(), getY(), 8, 8, side.u, side.v, 8, 8, 256, 256); + graphics.setColor(1f, 1f, 1f, 1F); } } diff --git a/src/main/java/vazkii/psi/client/gui/button/GuiButtonSpellPiece.java b/src/main/java/vazkii/psi/client/gui/button/GuiButtonSpellPiece.java index 82e401c71..aaa50b697 100644 --- a/src/main/java/vazkii/psi/client/gui/button/GuiButtonSpellPiece.java +++ b/src/main/java/vazkii/psi/client/gui/button/GuiButtonSpellPiece.java @@ -36,7 +36,7 @@ public void render(GuiGraphics graphics, int mouseX, int mouseY, float pTicks) { MultiBufferSource.BufferSource buffers = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); graphics.pose().pushPose(); graphics.pose().translate(getX(), getY(), 0); - piece.draw(graphics, buffers, 0xF000F0); + piece.draw(graphics.pose(), buffers, 0xF000F0); buffers.endBatch(); graphics.pose().popPose(); diff --git a/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java b/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java index 68dab9648..72cfc46cf 100644 --- a/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java +++ b/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java @@ -60,7 +60,7 @@ public PiecePanelWidget(int x, int y, int width, int height, String message, Gui @Override public void renderWidget(GuiGraphics graphics, int mouseX, int mouseY, float pTicks) { if(panelEnabled) { - graphics.fill(getX(), getY(), getY() + width, getY() + height, 0x88000000); + graphics.fill(getX(), getY(), getX() + width, getY() + height, 0x88000000); if(!visibleButtons.isEmpty()) { Button button = visibleButtons.get(Math.max(0, Math.min(panelCursor + (page * PIECES_PER_PAGE), visibleButtons.size() - 1))); @@ -248,7 +248,7 @@ public void updatePanelButtons() { } else if(!page.isRight() && this.page > 0) { page.setX(getX() + 4); - page.setX(getY() + height - 15); + page.setY(getY() + height - 15); page.visible = true; page.active = true; } @@ -439,7 +439,7 @@ public void closePanel() { }); searchField.visible = false; searchField.setEditable(false); - searchField.setFocused(true); + searchField.setFocused(false); parent.setFocused(parent.statusWidget); } diff --git a/src/main/java/vazkii/psi/client/gui/widget/SpellCostsWidget.java b/src/main/java/vazkii/psi/client/gui/widget/SpellCostsWidget.java index 19458a459..129242d70 100644 --- a/src/main/java/vazkii/psi/client/gui/widget/SpellCostsWidget.java +++ b/src/main/java/vazkii/psi/client/gui/widget/SpellCostsWidget.java @@ -67,7 +67,7 @@ public void renderWidget(GuiGraphics graphics, int mouseX, int mouseY, float pTi graphics.setColor(1f, 1f, 1f, 1F); graphics.blit(GuiProgrammer.texture, statX, statY, (stat.ordinal() + 1) * 12, parent.ySize + 16, 12, 12); - graphics.drawString(this.parent.getMinecraft().font, s, statX + 16, statY + 2, cadStat != null && cadVal < val && cadVal != -1 ? 0xFF6666 : 0xFFFFFF); + graphics.drawString(this.parent.getMinecraft().font, s, statX + 16, statY + 2, cadStat != null && cadVal < val && cadVal != -1 ? 0xFF6666 : 0xFFFFFF, false); if(mouseX > statX && mouseY > statY && mouseX < statX + 12 && mouseY < statY + 12 && !parent.panelWidget.panelEnabled) { parent.tooltip.add(Component.translatable(stat.getName()).withStyle(Psi.magical ? ChatFormatting.LIGHT_PURPLE : ChatFormatting.AQUA)); diff --git a/src/main/java/vazkii/psi/client/jei/tricks/DrawablePiece.java b/src/main/java/vazkii/psi/client/jei/tricks/DrawablePiece.java index d73a33cb8..b76ddad0e 100644 --- a/src/main/java/vazkii/psi/client/jei/tricks/DrawablePiece.java +++ b/src/main/java/vazkii/psi/client/jei/tricks/DrawablePiece.java @@ -31,7 +31,7 @@ public void draw(GuiGraphics graphics, int xOffset, int yOffset, int maskTop, in graphics.pose().translate(xOffset, yOffset, 0); MultiBufferSource.BufferSource buffers = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); - piece.drawBackground(graphics, buffers, 0xF000F0); + piece.drawBackground(graphics.pose(), buffers, 0xF000F0); buffers.endBatch(); diff --git a/src/main/java/vazkii/psi/client/patchouli/SpellGridComponent.java b/src/main/java/vazkii/psi/client/patchouli/SpellGridComponent.java index 07454dae8..4e5d59505 100644 --- a/src/main/java/vazkii/psi/client/patchouli/SpellGridComponent.java +++ b/src/main/java/vazkii/psi/client/patchouli/SpellGridComponent.java @@ -72,7 +72,7 @@ public void render(GuiGraphics graphics, IComponentRenderContext context, float // Pad the spell pieces and draw them graphics.pose().translate(7f, 7f, 0f); MultiBufferSource.BufferSource buffer = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); - grid.draw(graphics, buffer, 0xF000F0); + grid.draw(graphics.pose(), buffer, 0xF000F0); buffer.endBatch(); float scaledSize = 18 * scale; diff --git a/src/main/java/vazkii/psi/client/patchouli/SpellPieceComponent.java b/src/main/java/vazkii/psi/client/patchouli/SpellPieceComponent.java index 252d1f847..85f5c93bc 100644 --- a/src/main/java/vazkii/psi/client/patchouli/SpellPieceComponent.java +++ b/src/main/java/vazkii/psi/client/patchouli/SpellPieceComponent.java @@ -43,7 +43,7 @@ public void render(GuiGraphics graphics, IComponentRenderContext context, float MultiBufferSource.BufferSource buffer = MultiBufferSource.immediate(Tesselator.getInstance().getBuilder()); graphics.pose().pushPose(); graphics.pose().translate(x, y, 0); - piece.draw(graphics, buffer, 0xF000F0); + piece.draw(graphics.pose(), buffer, 0xF000F0); buffer.endBatch(); if(context.isAreaHovered(mouseX, mouseY, x - 1, y - 1, 16, 16)) { diff --git a/src/main/java/vazkii/psi/client/render/tile/RenderTileProgrammer.java b/src/main/java/vazkii/psi/client/render/tile/RenderTileProgrammer.java index 6260f2ccf..4b1b08ca4 100644 --- a/src/main/java/vazkii/psi/client/render/tile/RenderTileProgrammer.java +++ b/src/main/java/vazkii/psi/client/render/tile/RenderTileProgrammer.java @@ -78,8 +78,7 @@ public void render(TileProgrammer te, float partialticks, PoseStack ms, MultiBuf ms.translate(70F, 0F, -200F); } - GuiGraphics guigraphics = new GuiGraphics(Minecraft.getInstance(), MultiBufferSource.immediate(Tesselator.getInstance().getBuilder())); // TODO(Kamefrede): 1.20 check if this is correct - te.spell.draw(guigraphics, buffers, light); + te.spell.draw(ms, buffers, light); ms.pushPose(); ms.translate(0F, 0F, -0.01F); diff --git a/src/main/java/vazkii/psi/common/block/base/ModBlocks.java b/src/main/java/vazkii/psi/common/block/base/ModBlocks.java index 76307c1b8..3fbe2bd17 100644 --- a/src/main/java/vazkii/psi/common/block/base/ModBlocks.java +++ b/src/main/java/vazkii/psi/common/block/base/ModBlocks.java @@ -64,21 +64,18 @@ public class ModBlocks { @SubscribeEvent public static void register(RegisterEvent evt) { evt.register(ForgeRegistries.Keys.BLOCKS, helper -> { - BlockBehaviour.Properties metalBlockProperties = BlockBehaviour.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5.0F, 6.0F).sound(SoundType.METAL); - BlockBehaviour metalBehaviour = new Block(metalBlockProperties); - - cadAssembler = new BlockCADAssembler(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL).noOcclusion()); - programmer = new BlockProgrammer(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL).noOcclusion()); + cadAssembler = new BlockCADAssembler(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).noOcclusion()); + programmer = new BlockProgrammer(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).noOcclusion()); conjured = new BlockConjured(Block.Properties.of().mapColor(MapColor.NONE).instrument(NoteBlockInstrument.HAT).strength(0.3F).sound(SoundType.GLASS).noOcclusion().noLootTable().lightLevel(state -> state.getValue(BlockConjured.LIGHT) ? 15 : 0).noOcclusion().isValidSpawn(NO_SPAWN).isRedstoneConductor(NO_SUFFOCATION).isSuffocating(NO_SUFFOCATION).isViewBlocking(NO_SUFFOCATION)); - psidustBlock = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psimetalBlock = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psigemBlock = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psimetalPlateBlack = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psimetalPlateBlackLight = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL).lightLevel((blockState) -> 15)); - psimetalPlateWhite = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psimetalPlateWhiteLight = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL).lightLevel((blockstate) -> 15)); - psimetalEbony = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); - psimetalIvory = new Block(Block.Properties.copy(metalBehaviour).strength(5, 10).sound(SoundType.METAL)); + psidustBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psimetalBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psigemBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psimetalPlateBlack = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psimetalPlateBlackLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).lightLevel((blockState) -> 15)); + psimetalPlateWhite = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psimetalPlateWhiteLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).lightLevel((blockstate) -> 15)); + psimetalEbony = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + psimetalIvory = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); helper.register(new ResourceLocation(LibMisc.MOD_ID, LibBlockNames.CAD_ASSEMBLER), cadAssembler); helper.register(new ResourceLocation(LibMisc.MOD_ID, LibBlockNames.PROGRAMMER), programmer); @@ -116,7 +113,7 @@ public static void register(RegisterEvent evt) { evt.register(ForgeRegistries.Keys.MENU_TYPES, helper -> { helper.register(ForgeRegistries.BLOCKS.getKey(cadAssembler), containerCADAssembler); - DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> () -> { + DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> { MenuScreens.register(containerCADAssembler, GuiCADAssembler::new); }); }); diff --git a/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java b/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java index 1102e8d7b..56f07f8f4 100644 --- a/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java +++ b/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java @@ -17,6 +17,7 @@ import net.minecraftforge.fml.common.Mod; import net.minecraftforge.registries.RegisterEvent; +import vazkii.psi.common.block.base.ModBlocks; import vazkii.psi.common.item.ItemCAD; import vazkii.psi.common.item.base.ModItems; import vazkii.psi.common.lib.LibMisc; @@ -33,10 +34,104 @@ public static void register(RegisterEvent evt) { CreativeModeTab psiCreativeTab = CreativeModeTab.builder() .icon(() -> new ItemStack(ModItems.cadAssemblyIron)) .displayItems((parameters, output) -> { + output.accept(ModItems.psidust); + output.accept(ModItems.psimetal); + output.accept(ModItems.psigem); + output.accept(ModItems.ebonyPsimetal); + output.accept(ModItems.ivoryPsimetal); + output.accept(ModItems.ebonySubstance); + output.accept(ModItems.ivorySubstance); + + output.accept(ModItems.cadAssemblyIron); + output.accept(ModItems.cadAssemblyGold); + output.accept(ModItems.cadAssemblyPsimetal); + output.accept(ModItems.cadAssemblyIvory); + output.accept(ModItems.cadAssemblyEbony); + output.accept(ModItems.cadAssemblyCreative); + + output.accept(ModItems.cadCoreBasic); + output.accept(ModItems.cadCoreOverclocked); + output.accept(ModItems.cadCoreConductive); + output.accept(ModItems.cadCoreHyperClocked); + output.accept(ModItems.cadCoreRadiative); + + output.accept(ModItems.cadSocketBasic); + output.accept(ModItems.cadSocketSignaling); + output.accept(ModItems.cadSocketLarge); + output.accept(ModItems.cadSocketTransmissive); + output.accept(ModItems.cadSocketHuge); + + output.accept(ModItems.cadBatteryBasic); + output.accept(ModItems.cadBatteryExtended); + output.accept(ModItems.cadBatteryUltradense); + + output.accept(ModItems.cadColorizerWhite); + output.accept(ModItems.cadColorizerOrange); + output.accept(ModItems.cadColorizerMagenta); + output.accept(ModItems.cadColorizerLightBlue); + output.accept(ModItems.cadColorizerYellow); + output.accept(ModItems.cadColorizerLime); + output.accept(ModItems.cadColorizerPink); + output.accept(ModItems.cadColorizerGray); + output.accept(ModItems.cadColorizerLightGray); + output.accept(ModItems.cadColorizerCyan); + output.accept(ModItems.cadColorizerPurple); + output.accept(ModItems.cadColorizerBlue); + output.accept(ModItems.cadColorizerBrown); + output.accept(ModItems.cadColorizerGreen); + output.accept(ModItems.cadColorizerRed); + output.accept(ModItems.cadColorizerBlack); + output.accept(ModItems.cadColorizerRainbow); + output.accept(ModItems.cadColorizerPsi); + output.accept(ModItems.cadColorizerEmpty); + + output.accept(ModItems.spellBullet); + output.accept(ModItems.projectileSpellBullet); + output.accept(ModItems.loopSpellBullet); + output.accept(ModItems.circleSpellBullet); + output.accept(ModItems.grenadeSpellBullet); + output.accept(ModItems.chargeSpellBullet); + output.accept(ModItems.mineSpellBullet); + + output.accept(ModItems.spellDrive); + output.accept(ModItems.detonator); + output.accept(ModItems.exosuitController); + + output.accept(ModItems.exosuitSensorLight); + output.accept(ModItems.exosuitSensorHeat); + output.accept(ModItems.exosuitSensorStress); + output.accept(ModItems.exosuitSensorWater); + output.accept(ModItems.exosuitSensorTrigger); + output.acceptAll(ItemCAD.getCreativeTabItems()); + + output.accept(ModItems.vectorRuler); + output.accept(ModItems.psimetalShovel); + output.accept(ModItems.psimetalPickaxe); + output.accept(ModItems.psimetalAxe); + output.accept(ModItems.psimetalSword); + output.accept(ModItems.psimetalExosuitHelmet); + output.accept(ModItems.psimetalExosuitChestplate); + output.accept(ModItems.psimetalExosuitLeggings); + output.accept(ModItems.psimetalExosuitBoots); + + output.accept(ModBlocks.cadAssembler); + output.accept(ModBlocks.programmer); + output.accept(ModBlocks.psidustBlock); + output.accept(ModBlocks.psimetalBlock); + output.accept(ModBlocks.psigemBlock); + output.accept(ModBlocks.psimetalPlateBlack); + output.accept(ModBlocks.psimetalPlateBlackLight); + output.accept(ModBlocks.psimetalPlateWhite); + output.accept(ModBlocks.psimetalPlateWhiteLight); + output.accept(ModBlocks.psimetalEbony); + output.accept(ModBlocks.psimetalIvory); + + output.accept(ModBlocks.psimetalIvory); }) .hideTitle() - .withBackgroundLocation(new ResourceLocation(LibMisc.MOD_ID, LibResources.GUI_CREATIVE)) + .backgroundSuffix(LibResources.GUI_CREATIVE) + .withSearchBar() .build(); creativeModeTabRegisterHelper.register(PSI_CREATIVE_TAB, psiCreativeTab); }); diff --git a/src/main/java/vazkii/psi/common/item/base/ModItems.java b/src/main/java/vazkii/psi/common/item/base/ModItems.java index 6b8aa9fac..d874ccef1 100644 --- a/src/main/java/vazkii/psi/common/item/base/ModItems.java +++ b/src/main/java/vazkii/psi/common/item/base/ModItems.java @@ -292,7 +292,7 @@ public static void register(RegisterEvent evt) { } public static Item.Properties defaultBuilder() { - return new Item.Properties(); // TODO(Kamefrede): 1.20 add to tab + return new Item.Properties(); } } diff --git a/src/main/java/vazkii/psi/common/spell/constant/PieceConstantNumber.java b/src/main/java/vazkii/psi/common/spell/constant/PieceConstantNumber.java index 2c4d53f77..58e43551f 100644 --- a/src/main/java/vazkii/psi/common/spell/constant/PieceConstantNumber.java +++ b/src/main/java/vazkii/psi/common/spell/constant/PieceConstantNumber.java @@ -8,7 +8,9 @@ */ package vazkii.psi.common.spell.constant; +import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Font; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.nbt.CompoundTag; @@ -39,7 +41,7 @@ public void initParams() { } @Override - public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int light) { + public void drawAdditional(PoseStack pPoseStack, MultiBufferSource buffers, int light) { if(valueStr == null || valueStr.isEmpty() || valueStr.length() > 5) { valueStr = "0"; } @@ -54,11 +56,12 @@ public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int efflen = mc.font.width(valueStr) / scale; } - graphics.pose().pushPose(); - graphics.pose().scale(1F / scale, 1F / scale, 1F); - graphics.pose().translate((9 - efflen / 2) * scale, 4 * scale, 0); - graphics.drawString(mc.font, valueStr, 0, 0, color, false); // TODO(Kamefrede): 1.20 check if this is ruight - graphics.pose().popPose(); + pPoseStack.pushPose(); + pPoseStack.scale(1F / scale, 1F / scale, 1F); + pPoseStack.translate((9 - efflen / 2) * scale, 4 * scale, 0); + //graphics.drawString(mc.font, valueStr, 0, 0, color, false); // TODO(Kamefrede): 1.20 check if this is ruight + mc.font.drawInBatch(valueStr, 0, 0, color, false, pPoseStack.last().pose(), buffers, Font.DisplayMode.NORMAL, 0, 15728880); + pPoseStack.popPose(); } @Override diff --git a/src/main/java/vazkii/psi/common/spell/other/PieceConnector.java b/src/main/java/vazkii/psi/common/spell/other/PieceConnector.java index aead4a903..e48ed62ca 100644 --- a/src/main/java/vazkii/psi/common/spell/other/PieceConnector.java +++ b/src/main/java/vazkii/psi/common/spell/other/PieceConnector.java @@ -8,10 +8,12 @@ */ package vazkii.psi.common.spell.other; +import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.resources.model.Material; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -54,15 +56,15 @@ public Component getEvaluationTypeString() { @Override @OnlyIn(Dist.CLIENT) - public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int light) { - drawSide(graphics, buffers, light, paramSides.get(target)); + public void drawAdditional(PoseStack pPoseStack, MultiBufferSource buffers, int light) { + drawSide(pPoseStack, buffers, light, paramSides.get(target)); if(isInGrid) { for(SpellParam.Side side : SpellParam.Side.class.getEnumConstants()) { if(side.isEnabled()) { SpellPiece piece = spell.grid.getPieceAtSideSafely(x, y, side); if(piece != null && piece.isInputSide(side.getOpposite())) { - drawSide(graphics, buffers, light, side); + drawSide(pPoseStack, buffers, light, side); } } } @@ -70,9 +72,9 @@ public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int } @OnlyIn(Dist.CLIENT) - private void drawSide(GuiGraphics graphics, MultiBufferSource buffers, int light, SpellParam.Side side) { + private void drawSide(PoseStack pPoseStack, MultiBufferSource buffers, int light, SpellParam.Side side) { if(side.isEnabled()) { - Material material = new Material(ClientPsiAPI.PSI_PIECE_TEXTURE_ATLAS, LINES_TEXTURE); + Material material = new Material(TextureAtlas.LOCATION_BLOCKS, LINES_TEXTURE); VertexConsumer buffer = material.buffer(buffers, ignored -> SpellPiece.getLayer()); float minU = 0; @@ -99,7 +101,7 @@ private void drawSide(GuiGraphics graphics, MultiBufferSource buffers, int light /* See note in SpellPiece#drawBackground for why this chain needs to be split */ - Matrix4f mat = graphics.pose().last().pose(); + Matrix4f mat = pPoseStack.last().pose(); buffer.vertex(mat, 0, 16, 0).color(1F, 1F, 1F, 1F); buffer.uv(minU, maxV).uv2(light).endVertex(); buffer.vertex(mat, 16, 16, 0).color(1F, 1F, 1F, 1F); diff --git a/src/main/java/vazkii/psi/common/spell/other/PieceCrossConnector.java b/src/main/java/vazkii/psi/common/spell/other/PieceCrossConnector.java index 4e840d427..19ac3052c 100644 --- a/src/main/java/vazkii/psi/common/spell/other/PieceCrossConnector.java +++ b/src/main/java/vazkii/psi/common/spell/other/PieceCrossConnector.java @@ -8,10 +8,12 @@ */ package vazkii.psi.common.spell.other; +import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.texture.TextureAtlas; import net.minecraft.client.resources.model.Material; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -80,18 +82,18 @@ public void addToMetadata(SpellMetadata meta) throws SpellCompilationException { } @Override - public void drawAdditional(GuiGraphics graphics, MultiBufferSource buffers, int light) { - drawSide(graphics, buffers, paramSides.get(in1), light, LINE_ONE); - drawSide(graphics, buffers, paramSides.get(out1), light, LINE_ONE); + public void drawAdditional(PoseStack pPoseStack, MultiBufferSource buffers, int light) { + drawSide(pPoseStack, buffers, paramSides.get(in1), light, LINE_ONE); + drawSide(pPoseStack, buffers, paramSides.get(out1), light, LINE_ONE); - drawSide(graphics, buffers, paramSides.get(in2), light, LINE_TWO); - drawSide(graphics, buffers, paramSides.get(out2), light, LINE_TWO); + drawSide(pPoseStack, buffers, paramSides.get(in2), light, LINE_TWO); + drawSide(pPoseStack, buffers, paramSides.get(out2), light, LINE_TWO); } @OnlyIn(Dist.CLIENT) - private void drawSide(GuiGraphics graphics, MultiBufferSource buffers, SpellParam.Side side, int light, int color) { + private void drawSide(PoseStack pPoseStack, MultiBufferSource buffers, SpellParam.Side side, int light, int color) { if(side.isEnabled()) { - Material material = new Material(ClientPsiAPI.PSI_PIECE_TEXTURE_ATLAS, new ResourceLocation(LibResources.SPELL_CONNECTOR_LINES)); + Material material = new Material(TextureAtlas.LOCATION_BLOCKS, new ResourceLocation(LibResources.SPELL_CONNECTOR_LINES)); VertexConsumer buffer = material.buffer(buffers, ignored -> SpellPiece.getLayer()); float minU = 0; @@ -121,7 +123,7 @@ private void drawSide(GuiGraphics graphics, MultiBufferSource buffers, SpellPara /* See note in SpellPiece#drawBackground for why this chain needs to be split */ - Matrix4f mat = graphics.pose().last().pose(); + Matrix4f mat = pPoseStack.last().pose(); buffer.vertex(mat, 0, 16, 0).color(r, g, b, 1F); buffer.uv(minU, maxV).uv2(light).endVertex(); buffer.vertex(mat, 16, 16, 0).color(r, g, b, 1F); diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 479cba0f2..87ea64139 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -14,13 +14,13 @@ Psionic Spellcasting Instruments [[dependencies.psi]] modId="patchouli" mandatory=true - versionRange="[1.19.2-77,)" + versionRange="[1.20.1-83,)" side="BOTH" [[dependencies.psi]] modId="forge" mandatory=true - versionRange="[42.2.0,)" + versionRange="[47.1.47,)" ordering="AFTER" side="BOTH" \ No newline at end of file diff --git a/src/main/resources/assets/minecraft/atlases/blocks.json b/src/main/resources/assets/minecraft/atlases/blocks.json new file mode 100644 index 000000000..a7cf2cf0d --- /dev/null +++ b/src/main/resources/assets/minecraft/atlases/blocks.json @@ -0,0 +1,9 @@ +{ + "sources": [ + { + "type": "directory", + "source": "spell", + "prefix": "spell/" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/psi/models/block/cad_assembler.json b/src/main/resources/assets/psi/models/block/cad_assembler.json index 49cb1251d..f879b233f 100644 --- a/src/main/resources/assets/psi/models/block/cad_assembler.json +++ b/src/main/resources/assets/psi/models/block/cad_assembler.json @@ -2,11 +2,11 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { - "0": "psi:blocks/cad_assembler_top", - "1": "psi:blocks/cad_assembler_side", - "2": "psi:blocks/cad_assembler_bottom", - "3": "psi:blocks/cad_assembler_bottom_top", - "particle": "psi:blocks/cad_assembler_top" + "0": "psi:block/cad_assembler_top", + "1": "psi:block/cad_assembler_side", + "2": "psi:block/cad_assembler_bottom", + "3": "psi:block/cad_assembler_bottom_top", + "particle": "psi:block/cad_assembler_top" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/block/programmer.json b/src/main/resources/assets/psi/models/block/programmer.json index d6e8810d8..6cffbdc6a 100644 --- a/src/main/resources/assets/psi/models/block/programmer.json +++ b/src/main/resources/assets/psi/models/block/programmer.json @@ -1,7 +1,7 @@ { "parent": "psi:block/programmer_shape", "textures": { - "3": "psi:blocks/programmer_side_inactive", - "4": "psi:blocks/programmer_top_inactive" + "3": "psi:block/programmer_side_inactive", + "4": "psi:block/programmer_top_inactive" } } \ No newline at end of file diff --git a/src/main/resources/assets/psi/models/block/programmer_active.json b/src/main/resources/assets/psi/models/block/programmer_active.json index 4c7d2ebfb..d6315f406 100644 --- a/src/main/resources/assets/psi/models/block/programmer_active.json +++ b/src/main/resources/assets/psi/models/block/programmer_active.json @@ -1,7 +1,7 @@ { "parent": "psi:block/programmer_shape", "textures": { - "3": "psi:blocks/programmer_side", - "4": "psi:blocks/programmer_top" + "3": "psi:block/programmer_side", + "4": "psi:block/programmer_top" } } \ No newline at end of file diff --git a/src/main/resources/assets/psi/models/block/programmer_shape.json b/src/main/resources/assets/psi/models/block/programmer_shape.json index 21a2347a9..ce55e00b3 100644 --- a/src/main/resources/assets/psi/models/block/programmer_shape.json +++ b/src/main/resources/assets/psi/models/block/programmer_shape.json @@ -2,10 +2,10 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { - "0": "psi:blocks/cad_assembler_bottom", - "1": "psi:blocks/cad_assembler_bottom_top", - "2": "psi:blocks/cad_assembler_side", - "particle": "psi:blocks/cad_assembler_bottom" + "0": "psi:block/cad_assembler_bottom", + "1": "psi:block/cad_assembler_bottom_top", + "2": "psi:block/cad_assembler_side", + "particle": "psi:block/cad_assembler_bottom" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/_standard_colorizer.json b/src/main/resources/assets/psi/models/item/_standard_colorizer.json index 6d0703ecb..2afe78f24 100644 --- a/src/main/resources/assets/psi/models/item/_standard_colorizer.json +++ b/src/main/resources/assets/psi/models/item/_standard_colorizer.json @@ -1,8 +1,8 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/dye_cannister", - "layer1": "psi:items/dye_cannister_inside", - "layer2": "psi:items/dye_cannister_overlay" + "layer0": "psi:item/dye_cannister", + "layer1": "psi:item/dye_cannister_inside", + "layer2": "psi:item/dye_cannister_overlay" } } diff --git a/src/main/resources/assets/psi/models/item/_standard_sensor.json b/src/main/resources/assets/psi/models/item/_standard_sensor.json index ed6121a22..8b565655d 100644 --- a/src/main/resources/assets/psi/models/item/_standard_sensor.json +++ b/src/main/resources/assets/psi/models/item/_standard_sensor.json @@ -1,7 +1,7 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/exosuit_sensor", - "layer1": "psi:items/exosuit_sensor_overlay" + "layer0": "psi:item/exosuit_sensor", + "layer1": "psi:item/exosuit_sensor_overlay" } } diff --git a/src/main/resources/assets/psi/models/item/cad.json b/src/main/resources/assets/psi/models/item/cad.json index 414c2f980..3e9dcbf97 100644 --- a/src/main/resources/assets/psi/models/item/cad.json +++ b/src/main/resources/assets/psi/models/item/cad.json @@ -1,9 +1,9 @@ { "__comment": "_model generated using _mr_crayfish's _model _creator (http://mrcrayfish.com/modelcreator/)", "textures": { - "layer0": "psi:blocks/empty", - "-1": "psi:blocks/empty", - "layer1": "psi:items/cad_color" + "layer0": "psi:block/empty", + "-1": "psi:block/empty", + "layer1": "psi:item/cad_color" }, "gui_light": "front", "elements": [ diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_creative.json b/src/main/resources/assets/psi/models/item/cad_assembly_creative.json index e5d13a27e..4d04d030c 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_creative.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_creative.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_creative" + "layer0": "psi:item/cad_assembly_creative" } } diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_ebony_psimetal.json b/src/main/resources/assets/psi/models/item/cad_assembly_ebony_psimetal.json index ea97044ac..cd66ac338 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_ebony_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_ebony_psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_ebony_psimetal" + "layer0": "psi:item/cad_assembly_ebony_psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_gold.json b/src/main/resources/assets/psi/models/item/cad_assembly_gold.json index 9f92a7080..ea185ed01 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_gold.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_gold.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_gold" + "layer0": "psi:item/cad_assembly_gold" } } diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_iron.json b/src/main/resources/assets/psi/models/item/cad_assembly_iron.json index 804630e4d..5011ba863 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_iron.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_iron.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_iron" + "layer0": "psi:item/cad_assembly_iron" } } diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_ivory_psimetal.json b/src/main/resources/assets/psi/models/item/cad_assembly_ivory_psimetal.json index b9fa29c36..40fb71e85 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_ivory_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_ivory_psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_ivory_psimetal" + "layer0": "psi:item/cad_assembly_ivory_psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/cad_assembly_psimetal.json b/src/main/resources/assets/psi/models/item/cad_assembly_psimetal.json index cf644727b..f4a81742e 100644 --- a/src/main/resources/assets/psi/models/item/cad_assembly_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_assembly_psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_assembly_psimetal" + "layer0": "psi:item/cad_assembly_psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/cad_asssembler.json b/src/main/resources/assets/psi/models/item/cad_asssembler.json index c0d84c978..e4bc661ab 100644 --- a/src/main/resources/assets/psi/models/item/cad_asssembler.json +++ b/src/main/resources/assets/psi/models/item/cad_asssembler.json @@ -1,3 +1,3 @@ { - "parent": "psi:blocks/cad_assembler" + "parent": "psi:block/cad_assembler" } \ No newline at end of file diff --git a/src/main/resources/assets/psi/models/item/cad_battery_basic.json b/src/main/resources/assets/psi/models/item/cad_battery_basic.json index ce5f89d34..c8add56b7 100644 --- a/src/main/resources/assets/psi/models/item/cad_battery_basic.json +++ b/src/main/resources/assets/psi/models/item/cad_battery_basic.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_battery_basic" + "layer0": "psi:item/cad_battery_basic" } } diff --git a/src/main/resources/assets/psi/models/item/cad_battery_extended.json b/src/main/resources/assets/psi/models/item/cad_battery_extended.json index 475f314df..15d0bb267 100644 --- a/src/main/resources/assets/psi/models/item/cad_battery_extended.json +++ b/src/main/resources/assets/psi/models/item/cad_battery_extended.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_battery_extended" + "layer0": "psi:item/cad_battery_extended" } } diff --git a/src/main/resources/assets/psi/models/item/cad_battery_ultradense.json b/src/main/resources/assets/psi/models/item/cad_battery_ultradense.json index ad13688db..b6950a453 100644 --- a/src/main/resources/assets/psi/models/item/cad_battery_ultradense.json +++ b/src/main/resources/assets/psi/models/item/cad_battery_ultradense.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_battery_ultradense" + "layer0": "psi:item/cad_battery_ultradense" } } diff --git a/src/main/resources/assets/psi/models/item/cad_colorizer_empty.json b/src/main/resources/assets/psi/models/item/cad_colorizer_empty.json index edf56828e..3611a8773 100644 --- a/src/main/resources/assets/psi/models/item/cad_colorizer_empty.json +++ b/src/main/resources/assets/psi/models/item/cad_colorizer_empty.json @@ -1,7 +1,7 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/dye_cannister", - "layer1": "psi:items/dye_cannister_overlay" + "layer0": "psi:item/dye_cannister", + "layer1": "psi:item/dye_cannister_overlay" } } diff --git a/src/main/resources/assets/psi/models/item/cad_colorizer_psi.json b/src/main/resources/assets/psi/models/item/cad_colorizer_psi.json index 6d4c605d4..643af2dc9 100644 --- a/src/main/resources/assets/psi/models/item/cad_colorizer_psi.json +++ b/src/main/resources/assets/psi/models/item/cad_colorizer_psi.json @@ -1,6 +1,6 @@ { "parent": "psi:item/_standard_colorizer", "textures": { - "layer1": "psi:items/dye_cannister_special_psi" + "layer1": "psi:item/dye_cannister_special_psi" } } diff --git a/src/main/resources/assets/psi/models/item/cad_colorizer_rainbow.json b/src/main/resources/assets/psi/models/item/cad_colorizer_rainbow.json index 384fd0ad8..d8dd42e50 100644 --- a/src/main/resources/assets/psi/models/item/cad_colorizer_rainbow.json +++ b/src/main/resources/assets/psi/models/item/cad_colorizer_rainbow.json @@ -1,6 +1,6 @@ { "parent": "psi:item/_standard_colorizer", "textures": { - "layer1": "psi:items/dye_cannister_special_rainbow" + "layer1": "psi:item/dye_cannister_special_rainbow" } } diff --git a/src/main/resources/assets/psi/models/item/cad_core_basic.json b/src/main/resources/assets/psi/models/item/cad_core_basic.json index bd13a5a5f..3b6c9487c 100644 --- a/src/main/resources/assets/psi/models/item/cad_core_basic.json +++ b/src/main/resources/assets/psi/models/item/cad_core_basic.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_core_basic" + "layer0": "psi:item/cad_core_basic" } } diff --git a/src/main/resources/assets/psi/models/item/cad_core_conductive.json b/src/main/resources/assets/psi/models/item/cad_core_conductive.json index b753a7532..302f4cb90 100644 --- a/src/main/resources/assets/psi/models/item/cad_core_conductive.json +++ b/src/main/resources/assets/psi/models/item/cad_core_conductive.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_core_conductive" + "layer0": "psi:item/cad_core_conductive" } } diff --git a/src/main/resources/assets/psi/models/item/cad_core_hyperclocked.json b/src/main/resources/assets/psi/models/item/cad_core_hyperclocked.json index dd7771e3c..e360fb487 100644 --- a/src/main/resources/assets/psi/models/item/cad_core_hyperclocked.json +++ b/src/main/resources/assets/psi/models/item/cad_core_hyperclocked.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_core_hyperclocked" + "layer0": "psi:item/cad_core_hyperclocked" } } diff --git a/src/main/resources/assets/psi/models/item/cad_core_overclocked.json b/src/main/resources/assets/psi/models/item/cad_core_overclocked.json index f05db5031..a1009ef64 100644 --- a/src/main/resources/assets/psi/models/item/cad_core_overclocked.json +++ b/src/main/resources/assets/psi/models/item/cad_core_overclocked.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_core_overclocked" + "layer0": "psi:item/cad_core_overclocked" } } diff --git a/src/main/resources/assets/psi/models/item/cad_core_radiative.json b/src/main/resources/assets/psi/models/item/cad_core_radiative.json index 421ef67a2..489c5036f 100644 --- a/src/main/resources/assets/psi/models/item/cad_core_radiative.json +++ b/src/main/resources/assets/psi/models/item/cad_core_radiative.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_core_radiative" + "layer0": "psi:item/cad_core_radiative" } } diff --git a/src/main/resources/assets/psi/models/item/cad_creative.json b/src/main/resources/assets/psi/models/item/cad_creative.json index 5c5714b52..20796d274 100644 --- a/src/main/resources/assets/psi/models/item/cad_creative.json +++ b/src/main/resources/assets/psi/models/item/cad_creative.json @@ -3,10 +3,10 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "missing": "psi:blocks/empty", - "1": "psi:items/cad_color", - "3": "psi:items/cad_assembly_1", - "4": "psi:items/cad_creative_gizmo" + "missing": "psi:block/empty", + "1": "psi:item/cad_color", + "3": "psi:item/cad_assembly_1", + "4": "psi:item/cad_creative_gizmo" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_ebony_psimetal.json b/src/main/resources/assets/psi/models/item/cad_ebony_psimetal.json index 1f11f7202..d71612d29 100644 --- a/src/main/resources/assets/psi/models/item/cad_ebony_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_ebony_psimetal.json @@ -3,9 +3,9 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "missing": "psi:blocks/empty", - "1": "psi:items/cad_color", - "3": "psi:items/cad_assembly_1" + "missing": "psi:block/empty", + "1": "psi:item/cad_color", + "3": "psi:item/cad_assembly_1" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_gold.json b/src/main/resources/assets/psi/models/item/cad_gold.json index c8f5da7f2..13fbe3e85 100644 --- a/src/main/resources/assets/psi/models/item/cad_gold.json +++ b/src/main/resources/assets/psi/models/item/cad_gold.json @@ -3,8 +3,8 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "1": "psi:items/cad_color", - "2": "psi:items/cad_assembly_0" + "1": "psi:item/cad_color", + "2": "psi:item/cad_assembly_0" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_iron.json b/src/main/resources/assets/psi/models/item/cad_iron.json index 37a032214..a7d85e63e 100644 --- a/src/main/resources/assets/psi/models/item/cad_iron.json +++ b/src/main/resources/assets/psi/models/item/cad_iron.json @@ -3,9 +3,9 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "missing": "psi:blocks/empty", - "1": "psi:items/cad_color", - "2": "psi:items/cad_assembly_0" + "missing": "psi:block/empty", + "1": "psi:item/cad_color", + "2": "psi:item/cad_assembly_0" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_ivory_psimetal.json b/src/main/resources/assets/psi/models/item/cad_ivory_psimetal.json index ca9d2c8db..254fa5d1e 100644 --- a/src/main/resources/assets/psi/models/item/cad_ivory_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_ivory_psimetal.json @@ -3,9 +3,9 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "missing": "psi:blocks/empty", - "1": "psi:items/cad_color", - "3": "psi:items/cad_assembly_1" + "missing": "psi:block/empty", + "1": "psi:item/cad_color", + "3": "psi:item/cad_assembly_1" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_psimetal.json b/src/main/resources/assets/psi/models/item/cad_psimetal.json index ee4d8370b..fc7754472 100644 --- a/src/main/resources/assets/psi/models/item/cad_psimetal.json +++ b/src/main/resources/assets/psi/models/item/cad_psimetal.json @@ -3,9 +3,9 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "missing": "psi:blocks/empty", - "1": "psi:items/cad_color", - "2": "psi:items/cad_assembly_0" + "missing": "psi:block/empty", + "1": "psi:item/cad_color", + "2": "psi:item/cad_assembly_0" }, "elements": [ { diff --git a/src/main/resources/assets/psi/models/item/cad_socket_basic.json b/src/main/resources/assets/psi/models/item/cad_socket_basic.json index e4348a301..340ae8d6a 100644 --- a/src/main/resources/assets/psi/models/item/cad_socket_basic.json +++ b/src/main/resources/assets/psi/models/item/cad_socket_basic.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_socket_basic" + "layer0": "psi:item/cad_socket_basic" } } diff --git a/src/main/resources/assets/psi/models/item/cad_socket_huge.json b/src/main/resources/assets/psi/models/item/cad_socket_huge.json index f4a8fbcd3..8db7539f3 100644 --- a/src/main/resources/assets/psi/models/item/cad_socket_huge.json +++ b/src/main/resources/assets/psi/models/item/cad_socket_huge.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_socket_huge" + "layer0": "psi:item/cad_socket_huge" } } diff --git a/src/main/resources/assets/psi/models/item/cad_socket_large.json b/src/main/resources/assets/psi/models/item/cad_socket_large.json index d87d4c80f..d16a4b629 100644 --- a/src/main/resources/assets/psi/models/item/cad_socket_large.json +++ b/src/main/resources/assets/psi/models/item/cad_socket_large.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_socket_large" + "layer0": "psi:item/cad_socket_large" } } diff --git a/src/main/resources/assets/psi/models/item/cad_socket_signaling.json b/src/main/resources/assets/psi/models/item/cad_socket_signaling.json index aacea32b0..44a6b8edd 100644 --- a/src/main/resources/assets/psi/models/item/cad_socket_signaling.json +++ b/src/main/resources/assets/psi/models/item/cad_socket_signaling.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_socket_signaling" + "layer0": "psi:item/cad_socket_signaling" } } diff --git a/src/main/resources/assets/psi/models/item/cad_socket_transmissive.json b/src/main/resources/assets/psi/models/item/cad_socket_transmissive.json index 543792ce6..3e9e9f403 100644 --- a/src/main/resources/assets/psi/models/item/cad_socket_transmissive.json +++ b/src/main/resources/assets/psi/models/item/cad_socket_transmissive.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/cad_socket_transmissive" + "layer0": "psi:item/cad_socket_transmissive" } } diff --git a/src/main/resources/assets/psi/models/item/detonator.json b/src/main/resources/assets/psi/models/item/detonator.json index 38a1efc0f..d496bd744 100644 --- a/src/main/resources/assets/psi/models/item/detonator.json +++ b/src/main/resources/assets/psi/models/item/detonator.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/detonator" + "layer0": "psi:item/detonator" } } diff --git a/src/main/resources/assets/psi/models/item/ebony_psimetal.json b/src/main/resources/assets/psi/models/item/ebony_psimetal.json index f49867fa7..ed3ca38d7 100644 --- a/src/main/resources/assets/psi/models/item/ebony_psimetal.json +++ b/src/main/resources/assets/psi/models/item/ebony_psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/ebony_psimetal" + "layer0": "psi:item/ebony_psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/ebony_substance.json b/src/main/resources/assets/psi/models/item/ebony_substance.json index 95dc3b027..e276826bc 100644 --- a/src/main/resources/assets/psi/models/item/ebony_substance.json +++ b/src/main/resources/assets/psi/models/item/ebony_substance.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/ebony_substance" + "layer0": "psi:item/ebony_substance" } } diff --git a/src/main/resources/assets/psi/models/item/encyclopaedia_psionica.json b/src/main/resources/assets/psi/models/item/encyclopaedia_psionica.json index dddc3261a..496e8fc52 100644 --- a/src/main/resources/assets/psi/models/item/encyclopaedia_psionica.json +++ b/src/main/resources/assets/psi/models/item/encyclopaedia_psionica.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/encyclopaedia_psionica" + "layer0": "psi:item/encyclopaedia_psionica" } } diff --git a/src/main/resources/assets/psi/models/item/exosuit_controller.json b/src/main/resources/assets/psi/models/item/exosuit_controller.json index 2c5f4c63b..fbdc21799 100644 --- a/src/main/resources/assets/psi/models/item/exosuit_controller.json +++ b/src/main/resources/assets/psi/models/item/exosuit_controller.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/exosuit_controller" + "layer0": "psi:item/exosuit_controller" } } diff --git a/src/main/resources/assets/psi/models/item/ivory_psimetal.json b/src/main/resources/assets/psi/models/item/ivory_psimetal.json index 557d28a61..6702ce515 100644 --- a/src/main/resources/assets/psi/models/item/ivory_psimetal.json +++ b/src/main/resources/assets/psi/models/item/ivory_psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/ivory_psimetal" + "layer0": "psi:item/ivory_psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/ivory_substance.json b/src/main/resources/assets/psi/models/item/ivory_substance.json index 9e80908e9..31981db72 100644 --- a/src/main/resources/assets/psi/models/item/ivory_substance.json +++ b/src/main/resources/assets/psi/models/item/ivory_substance.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/ivory_substance" + "layer0": "psi:item/ivory_substance" } } diff --git a/src/main/resources/assets/psi/models/item/psidust.json b/src/main/resources/assets/psi/models/item/psidust.json index 4c6ea1a4b..3f20bed41 100644 --- a/src/main/resources/assets/psi/models/item/psidust.json +++ b/src/main/resources/assets/psi/models/item/psidust.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psidust" + "layer0": "psi:item/psidust" } } diff --git a/src/main/resources/assets/psi/models/item/psigem.json b/src/main/resources/assets/psi/models/item/psigem.json index 950143c4c..ab4f56d5c 100644 --- a/src/main/resources/assets/psi/models/item/psigem.json +++ b/src/main/resources/assets/psi/models/item/psigem.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psigem" + "layer0": "psi:item/psigem" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal.json b/src/main/resources/assets/psi/models/item/psimetal.json index 14aebf6ba..3b235ca74 100644 --- a/src/main/resources/assets/psi/models/item/psimetal.json +++ b/src/main/resources/assets/psi/models/item/psimetal.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psimetal" + "layer0": "psi:item/psimetal" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_axe.json b/src/main/resources/assets/psi/models/item/psimetal_axe.json index 26259a8b7..5a8e44e2b 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_axe.json +++ b/src/main/resources/assets/psi/models/item/psimetal_axe.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/handheld", "textures": { - "layer0": "psi:items/psimetal_axe" + "layer0": "psi:item/psimetal_axe" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_exosuit_boots.json b/src/main/resources/assets/psi/models/item/psimetal_exosuit_boots.json index 65dab6ede..1d984d098 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_exosuit_boots.json +++ b/src/main/resources/assets/psi/models/item/psimetal_exosuit_boots.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psimetal_exosuit_boots" + "layer0": "psi:item/psimetal_exosuit_boots" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_exosuit_chestplate.json b/src/main/resources/assets/psi/models/item/psimetal_exosuit_chestplate.json index f166c71c3..67f15dc16 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_exosuit_chestplate.json +++ b/src/main/resources/assets/psi/models/item/psimetal_exosuit_chestplate.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psimetal_exosuit_chestplate" + "layer0": "psi:item/psimetal_exosuit_chestplate" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_exosuit_helmet.json b/src/main/resources/assets/psi/models/item/psimetal_exosuit_helmet.json index efc8f1a30..da467d59f 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_exosuit_helmet.json +++ b/src/main/resources/assets/psi/models/item/psimetal_exosuit_helmet.json @@ -1,7 +1,7 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psimetal_exosuit_helmet", - "layer1": "psi:items/psimetal_exosuit_helmet_sensor" + "layer0": "psi:item/psimetal_exosuit_helmet", + "layer1": "psi:item/psimetal_exosuit_helmet_sensor" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_exosuit_leggings.json b/src/main/resources/assets/psi/models/item/psimetal_exosuit_leggings.json index d8e4932c8..c8d93c913 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_exosuit_leggings.json +++ b/src/main/resources/assets/psi/models/item/psimetal_exosuit_leggings.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/psimetal_exosuit_leggings" + "layer0": "psi:item/psimetal_exosuit_leggings" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_pickaxe.json b/src/main/resources/assets/psi/models/item/psimetal_pickaxe.json index 9d2d93f81..4ff1353f1 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_pickaxe.json +++ b/src/main/resources/assets/psi/models/item/psimetal_pickaxe.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/handheld", "textures": { - "layer0": "psi:items/psimetal_pickaxe" + "layer0": "psi:item/psimetal_pickaxe" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_shovel.json b/src/main/resources/assets/psi/models/item/psimetal_shovel.json index 584ac789c..9bed6c88e 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_shovel.json +++ b/src/main/resources/assets/psi/models/item/psimetal_shovel.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/handheld", "textures": { - "layer0": "psi:items/psimetal_shovel" + "layer0": "psi:item/psimetal_shovel" } } diff --git a/src/main/resources/assets/psi/models/item/psimetal_sword.json b/src/main/resources/assets/psi/models/item/psimetal_sword.json index c9cbc6cf5..b02bcc43d 100644 --- a/src/main/resources/assets/psi/models/item/psimetal_sword.json +++ b/src/main/resources/assets/psi/models/item/psimetal_sword.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/handheld", "textures": { - "layer0": "psi:items/psimetal_sword" + "layer0": "psi:item/psimetal_sword" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet.json b/src/main/resources/assets/psi/models/item/spell_bullet.json index d4fce712d..05c8d48f5 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet" + "layer0": "psi:item/spell_bullet" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_active.json index c0f1b12e8..fb3b621a9 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_active" + "layer0": "psi:item/spell_bullet_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_charge.json b/src/main/resources/assets/psi/models/item/spell_bullet_charge.json index e02462cdd..3374722d9 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_charge.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_charge.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_charge" + "layer0": "psi:item/spell_bullet_charge" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_charge_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_charge_active.json index 5615cabaf..36c6764c4 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_charge_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_charge_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_charge_active" + "layer0": "psi:item/spell_bullet_charge_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_circle.json b/src/main/resources/assets/psi/models/item/spell_bullet_circle.json index b46cb0bd8..373243cc5 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_circle.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_circle.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_circle" + "layer0": "psi:item/spell_bullet_circle" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_circle_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_circle_active.json index 5ec30da9b..e61335acc 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_circle_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_circle_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_circle_active" + "layer0": "psi:item/spell_bullet_circle_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_grenade.json b/src/main/resources/assets/psi/models/item/spell_bullet_grenade.json index c02aa5294..092b945d2 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_grenade.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_grenade.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_grenade" + "layer0": "psi:item/spell_bullet_grenade" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_grenade_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_grenade_active.json index b69689a6d..d882843a2 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_grenade_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_grenade_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_grenade_active" + "layer0": "psi:item/spell_bullet_grenade_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_loop.json b/src/main/resources/assets/psi/models/item/spell_bullet_loop.json index f570b2cbf..8a07ce066 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_loop.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_loop.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_loop" + "layer0": "psi:item/spell_bullet_loop" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_loop_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_loop_active.json index 37ef99e29..98bdaf735 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_loop_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_loop_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_loop_active" + "layer0": "psi:item/spell_bullet_loop_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_mine.json b/src/main/resources/assets/psi/models/item/spell_bullet_mine.json index a1bddd50f..84693dc77 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_mine.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_mine.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_mine" + "layer0": "psi:item/spell_bullet_mine" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_mine_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_mine_active.json index a12570ad1..88ef57f7b 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_mine_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_mine_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_mine_active" + "layer0": "psi:item/spell_bullet_mine_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_projectile.json b/src/main/resources/assets/psi/models/item/spell_bullet_projectile.json index d05141b31..cd36ceec3 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_projectile.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_projectile.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_projectile" + "layer0": "psi:item/spell_bullet_projectile" } } diff --git a/src/main/resources/assets/psi/models/item/spell_bullet_projectile_active.json b/src/main/resources/assets/psi/models/item/spell_bullet_projectile_active.json index 9b26a79aa..833ef60dd 100644 --- a/src/main/resources/assets/psi/models/item/spell_bullet_projectile_active.json +++ b/src/main/resources/assets/psi/models/item/spell_bullet_projectile_active.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_bullet_projectile_active" + "layer0": "psi:item/spell_bullet_projectile_active" } } diff --git a/src/main/resources/assets/psi/models/item/spell_drive.json b/src/main/resources/assets/psi/models/item/spell_drive.json index 0c22d5753..89a723bdd 100644 --- a/src/main/resources/assets/psi/models/item/spell_drive.json +++ b/src/main/resources/assets/psi/models/item/spell_drive.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/spell_drive" + "layer0": "psi:item/spell_drive" } } diff --git a/src/main/resources/assets/psi/models/item/vector_ruler.json b/src/main/resources/assets/psi/models/item/vector_ruler.json index 073e0d4a3..ef1122efe 100644 --- a/src/main/resources/assets/psi/models/item/vector_ruler.json +++ b/src/main/resources/assets/psi/models/item/vector_ruler.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "psi:items/vector_ruler" + "layer0": "psi:item/vector_ruler" } } diff --git a/src/main/resources/assets/psi/patchouli_books/encyclopaedia_psionica/en_us/entries/items/spell_bullet.json b/src/main/resources/assets/psi/patchouli_books/encyclopaedia_psionica/en_us/entries/items/spell_bullet.json index f716fe2a7..7006c2df3 100644 --- a/src/main/resources/assets/psi/patchouli_books/encyclopaedia_psionica/en_us/entries/items/spell_bullet.json +++ b/src/main/resources/assets/psi/patchouli_books/encyclopaedia_psionica/en_us/entries/items/spell_bullet.json @@ -12,13 +12,13 @@ "type": "relations", "text": "psi.book.page.spellBullet.1", "entries": [ - "items/spell_bullet", - "items/projectile_bullet", - "items/loopcast_bullet", - "items/circle_bullet", - "items/grenade_bullet", - "items/charge_bullet", - "items/mine_bullet" + "psi:items/spell_bullet", + "psi:items/projectile_bullet", + "psi:items/loopcast_bullet", + "psi:items/circle_bullet", + "psi:items/grenade_bullet", + "psi:items/charge_bullet", + "psi:items/mine_bullet" ], "title": "Types of Bullets" }, diff --git a/src/main/resources/assets/psi/textures/blocks/cad_assembler_bottom.png b/src/main/resources/assets/psi/textures/block/cad_assembler_bottom.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/cad_assembler_bottom.png rename to src/main/resources/assets/psi/textures/block/cad_assembler_bottom.png diff --git a/src/main/resources/assets/psi/textures/blocks/cad_assembler_bottom_top.png b/src/main/resources/assets/psi/textures/block/cad_assembler_bottom_top.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/cad_assembler_bottom_top.png rename to src/main/resources/assets/psi/textures/block/cad_assembler_bottom_top.png diff --git a/src/main/resources/assets/psi/textures/blocks/cad_assembler_side.png b/src/main/resources/assets/psi/textures/block/cad_assembler_side.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/cad_assembler_side.png rename to src/main/resources/assets/psi/textures/block/cad_assembler_side.png diff --git a/src/main/resources/assets/psi/textures/blocks/cad_assembler_top.png b/src/main/resources/assets/psi/textures/block/cad_assembler_top.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/cad_assembler_top.png rename to src/main/resources/assets/psi/textures/block/cad_assembler_top.png diff --git a/src/main/resources/assets/psi/textures/blocks/ebony_psimetal_block.png b/src/main/resources/assets/psi/textures/block/ebony_psimetal_block.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/ebony_psimetal_block.png rename to src/main/resources/assets/psi/textures/block/ebony_psimetal_block.png diff --git a/src/main/resources/assets/psi/textures/blocks/empty.png b/src/main/resources/assets/psi/textures/block/empty.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/empty.png rename to src/main/resources/assets/psi/textures/block/empty.png diff --git a/src/main/resources/assets/psi/textures/blocks/ivory_psimetal_block.png b/src/main/resources/assets/psi/textures/block/ivory_psimetal_block.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/ivory_psimetal_block.png rename to src/main/resources/assets/psi/textures/block/ivory_psimetal_block.png diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_bottom.png b/src/main/resources/assets/psi/textures/block/programmer_bottom.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_bottom.png rename to src/main/resources/assets/psi/textures/block/programmer_bottom.png diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_side.png b/src/main/resources/assets/psi/textures/block/programmer_side.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_side.png rename to src/main/resources/assets/psi/textures/block/programmer_side.png diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_side.png.mcmeta b/src/main/resources/assets/psi/textures/block/programmer_side.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_side.png.mcmeta rename to src/main/resources/assets/psi/textures/block/programmer_side.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_side_inactive.png b/src/main/resources/assets/psi/textures/block/programmer_side_inactive.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_side_inactive.png rename to src/main/resources/assets/psi/textures/block/programmer_side_inactive.png diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_top.png b/src/main/resources/assets/psi/textures/block/programmer_top.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_top.png rename to src/main/resources/assets/psi/textures/block/programmer_top.png diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_top.png.mcmeta b/src/main/resources/assets/psi/textures/block/programmer_top.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_top.png.mcmeta rename to src/main/resources/assets/psi/textures/block/programmer_top.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/programmer_top_inactive.png b/src/main/resources/assets/psi/textures/block/programmer_top_inactive.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/programmer_top_inactive.png rename to src/main/resources/assets/psi/textures/block/programmer_top_inactive.png diff --git a/src/main/resources/assets/psi/textures/blocks/psidust_block.png b/src/main/resources/assets/psi/textures/block/psidust_block.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psidust_block.png rename to src/main/resources/assets/psi/textures/block/psidust_block.png diff --git a/src/main/resources/assets/psi/textures/blocks/psigem_block.png b/src/main/resources/assets/psi/textures/block/psigem_block.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psigem_block.png rename to src/main/resources/assets/psi/textures/block/psigem_block.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_block.png b/src/main/resources/assets/psi/textures/block/psimetal_block.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_block.png rename to src/main/resources/assets/psi/textures/block/psimetal_block.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_black.png b/src/main/resources/assets/psi/textures/block/psimetal_plate_black.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_black.png rename to src/main/resources/assets/psi/textures/block/psimetal_plate_black.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_black_light.png b/src/main/resources/assets/psi/textures/block/psimetal_plate_black_light.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_black_light.png rename to src/main/resources/assets/psi/textures/block/psimetal_plate_black_light.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_black_light.png.mcmeta b/src/main/resources/assets/psi/textures/block/psimetal_plate_black_light.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_black_light.png.mcmeta rename to src/main/resources/assets/psi/textures/block/psimetal_plate_black_light.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_white.png b/src/main/resources/assets/psi/textures/block/psimetal_plate_white.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_white.png rename to src/main/resources/assets/psi/textures/block/psimetal_plate_white.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_white_light.png b/src/main/resources/assets/psi/textures/block/psimetal_plate_white_light.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_white_light.png rename to src/main/resources/assets/psi/textures/block/psimetal_plate_white_light.png diff --git a/src/main/resources/assets/psi/textures/blocks/psimetal_plate_white_light.png.mcmeta b/src/main/resources/assets/psi/textures/block/psimetal_plate_white_light.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/psimetal_plate_white_light.png.mcmeta rename to src/main/resources/assets/psi/textures/block/psimetal_plate_white_light.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_blue.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_blue.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_blue.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_blue.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_blue.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_blue.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_blue.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_blue.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_green.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_green.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_green.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_green.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_green.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_green.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_black_light_green.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_black_light_green.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan_light.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan_light.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan_light.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan_light.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan_light.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan_light.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_cyan_light.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_cyan_light.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta_light.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta_light.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta_light.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta_light.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta_light.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta_light.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_magenta_light.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_magenta_light.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_orange.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_orange.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_orange.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_orange.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_orange.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_orange.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_orange.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_orange.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_purple.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_purple.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_purple.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_purple.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_purple.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_purple.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_purple.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_purple.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_spring_green.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_spring_green.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_spring_green.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_spring_green.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_spring_green.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_spring_green.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_white_light_spring_green.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_white_light_spring_green.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow_light.png b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow_light.png similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow_light.png rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow_light.png diff --git a/src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow_light.png.mcmeta b/src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow_light.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/blocks/unused/psimetal_plate_yellow_light.png.mcmeta rename to src/main/resources/assets/psi/textures/block/unused/psimetal_plate_yellow_light.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_0.png b/src/main/resources/assets/psi/textures/item/cad_assembly_0.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_0.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_0.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_1.png b/src/main/resources/assets/psi/textures/item/cad_assembly_1.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_1.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_1.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_creative.png b/src/main/resources/assets/psi/textures/item/cad_assembly_creative.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_creative.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_creative.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_ebony_psimetal.png b/src/main/resources/assets/psi/textures/item/cad_assembly_ebony_psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_ebony_psimetal.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_ebony_psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_gold.png b/src/main/resources/assets/psi/textures/item/cad_assembly_gold.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_gold.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_gold.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_iron.png b/src/main/resources/assets/psi/textures/item/cad_assembly_iron.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_iron.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_iron.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_ivory_psimetal.png b/src/main/resources/assets/psi/textures/item/cad_assembly_ivory_psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_ivory_psimetal.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_ivory_psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/cad_assembly_psimetal.png b/src/main/resources/assets/psi/textures/item/cad_assembly_psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_assembly_psimetal.png rename to src/main/resources/assets/psi/textures/item/cad_assembly_psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/cad_battery_basic.png b/src/main/resources/assets/psi/textures/item/cad_battery_basic.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_battery_basic.png rename to src/main/resources/assets/psi/textures/item/cad_battery_basic.png diff --git a/src/main/resources/assets/psi/textures/items/cad_battery_extended.png b/src/main/resources/assets/psi/textures/item/cad_battery_extended.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_battery_extended.png rename to src/main/resources/assets/psi/textures/item/cad_battery_extended.png diff --git a/src/main/resources/assets/psi/textures/items/cad_battery_ultradense.png b/src/main/resources/assets/psi/textures/item/cad_battery_ultradense.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_battery_ultradense.png rename to src/main/resources/assets/psi/textures/item/cad_battery_ultradense.png diff --git a/src/main/resources/assets/psi/textures/items/cad_color.png b/src/main/resources/assets/psi/textures/item/cad_color.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_color.png rename to src/main/resources/assets/psi/textures/item/cad_color.png diff --git a/src/main/resources/assets/psi/textures/items/cad_core_basic.png b/src/main/resources/assets/psi/textures/item/cad_core_basic.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_core_basic.png rename to src/main/resources/assets/psi/textures/item/cad_core_basic.png diff --git a/src/main/resources/assets/psi/textures/items/cad_core_conductive.png b/src/main/resources/assets/psi/textures/item/cad_core_conductive.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_core_conductive.png rename to src/main/resources/assets/psi/textures/item/cad_core_conductive.png diff --git a/src/main/resources/assets/psi/textures/items/cad_core_hyperclocked.png b/src/main/resources/assets/psi/textures/item/cad_core_hyperclocked.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_core_hyperclocked.png rename to src/main/resources/assets/psi/textures/item/cad_core_hyperclocked.png diff --git a/src/main/resources/assets/psi/textures/items/cad_core_overclocked.png b/src/main/resources/assets/psi/textures/item/cad_core_overclocked.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_core_overclocked.png rename to src/main/resources/assets/psi/textures/item/cad_core_overclocked.png diff --git a/src/main/resources/assets/psi/textures/items/cad_core_radiative.png b/src/main/resources/assets/psi/textures/item/cad_core_radiative.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_core_radiative.png rename to src/main/resources/assets/psi/textures/item/cad_core_radiative.png diff --git a/src/main/resources/assets/psi/textures/items/cad_creative_gizmo.png b/src/main/resources/assets/psi/textures/item/cad_creative_gizmo.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_creative_gizmo.png rename to src/main/resources/assets/psi/textures/item/cad_creative_gizmo.png diff --git a/src/main/resources/assets/psi/textures/items/cad_creative_gizmo.png.mcmeta b/src/main/resources/assets/psi/textures/item/cad_creative_gizmo.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_creative_gizmo.png.mcmeta rename to src/main/resources/assets/psi/textures/item/cad_creative_gizmo.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/cad_socket_basic.png b/src/main/resources/assets/psi/textures/item/cad_socket_basic.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_socket_basic.png rename to src/main/resources/assets/psi/textures/item/cad_socket_basic.png diff --git a/src/main/resources/assets/psi/textures/items/cad_socket_huge.png b/src/main/resources/assets/psi/textures/item/cad_socket_huge.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_socket_huge.png rename to src/main/resources/assets/psi/textures/item/cad_socket_huge.png diff --git a/src/main/resources/assets/psi/textures/items/cad_socket_large.png b/src/main/resources/assets/psi/textures/item/cad_socket_large.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_socket_large.png rename to src/main/resources/assets/psi/textures/item/cad_socket_large.png diff --git a/src/main/resources/assets/psi/textures/items/cad_socket_signaling.png b/src/main/resources/assets/psi/textures/item/cad_socket_signaling.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_socket_signaling.png rename to src/main/resources/assets/psi/textures/item/cad_socket_signaling.png diff --git a/src/main/resources/assets/psi/textures/items/cad_socket_transmissive.png b/src/main/resources/assets/psi/textures/item/cad_socket_transmissive.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/cad_socket_transmissive.png rename to src/main/resources/assets/psi/textures/item/cad_socket_transmissive.png diff --git a/src/main/resources/assets/psi/textures/items/detonator.png b/src/main/resources/assets/psi/textures/item/detonator.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/detonator.png rename to src/main/resources/assets/psi/textures/item/detonator.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister.png b/src/main/resources/assets/psi/textures/item/dye_cannister.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister.png rename to src/main/resources/assets/psi/textures/item/dye_cannister.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_inside.png b/src/main/resources/assets/psi/textures/item/dye_cannister_inside.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_inside.png rename to src/main/resources/assets/psi/textures/item/dye_cannister_inside.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_overlay.png b/src/main/resources/assets/psi/textures/item/dye_cannister_overlay.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_overlay.png rename to src/main/resources/assets/psi/textures/item/dye_cannister_overlay.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_special_psi.png b/src/main/resources/assets/psi/textures/item/dye_cannister_special_psi.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_special_psi.png rename to src/main/resources/assets/psi/textures/item/dye_cannister_special_psi.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_special_psi.png.mcmeta b/src/main/resources/assets/psi/textures/item/dye_cannister_special_psi.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_special_psi.png.mcmeta rename to src/main/resources/assets/psi/textures/item/dye_cannister_special_psi.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_special_rainbow.png b/src/main/resources/assets/psi/textures/item/dye_cannister_special_rainbow.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_special_rainbow.png rename to src/main/resources/assets/psi/textures/item/dye_cannister_special_rainbow.png diff --git a/src/main/resources/assets/psi/textures/items/dye_cannister_special_rainbow.png.mcmeta b/src/main/resources/assets/psi/textures/item/dye_cannister_special_rainbow.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/items/dye_cannister_special_rainbow.png.mcmeta rename to src/main/resources/assets/psi/textures/item/dye_cannister_special_rainbow.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/ebony_psimetal.png b/src/main/resources/assets/psi/textures/item/ebony_psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/ebony_psimetal.png rename to src/main/resources/assets/psi/textures/item/ebony_psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/ebony_substance.png b/src/main/resources/assets/psi/textures/item/ebony_substance.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/ebony_substance.png rename to src/main/resources/assets/psi/textures/item/ebony_substance.png diff --git a/src/main/resources/assets/psi/textures/items/encyclopaedia_psionica.png b/src/main/resources/assets/psi/textures/item/encyclopaedia_psionica.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/encyclopaedia_psionica.png rename to src/main/resources/assets/psi/textures/item/encyclopaedia_psionica.png diff --git a/src/main/resources/assets/psi/textures/items/exosuit_controller.png b/src/main/resources/assets/psi/textures/item/exosuit_controller.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/exosuit_controller.png rename to src/main/resources/assets/psi/textures/item/exosuit_controller.png diff --git a/src/main/resources/assets/psi/textures/items/exosuit_sensor.png b/src/main/resources/assets/psi/textures/item/exosuit_sensor.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/exosuit_sensor.png rename to src/main/resources/assets/psi/textures/item/exosuit_sensor.png diff --git a/src/main/resources/assets/psi/textures/items/exosuit_sensor_overlay.png b/src/main/resources/assets/psi/textures/item/exosuit_sensor_overlay.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/exosuit_sensor_overlay.png rename to src/main/resources/assets/psi/textures/item/exosuit_sensor_overlay.png diff --git a/src/main/resources/assets/psi/textures/items/ivory_psimetal.png b/src/main/resources/assets/psi/textures/item/ivory_psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/ivory_psimetal.png rename to src/main/resources/assets/psi/textures/item/ivory_psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/ivory_substance.png b/src/main/resources/assets/psi/textures/item/ivory_substance.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/ivory_substance.png rename to src/main/resources/assets/psi/textures/item/ivory_substance.png diff --git a/src/main/resources/assets/psi/textures/items/psidust.png b/src/main/resources/assets/psi/textures/item/psidust.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psidust.png rename to src/main/resources/assets/psi/textures/item/psidust.png diff --git a/src/main/resources/assets/psi/textures/items/psigem.png b/src/main/resources/assets/psi/textures/item/psigem.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psigem.png rename to src/main/resources/assets/psi/textures/item/psigem.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal.png b/src/main/resources/assets/psi/textures/item/psimetal.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal.png rename to src/main/resources/assets/psi/textures/item/psimetal.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_axe.png b/src/main/resources/assets/psi/textures/item/psimetal_axe.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_axe.png rename to src/main/resources/assets/psi/textures/item/psimetal_axe.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_exosuit_boots.png b/src/main/resources/assets/psi/textures/item/psimetal_exosuit_boots.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_exosuit_boots.png rename to src/main/resources/assets/psi/textures/item/psimetal_exosuit_boots.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_exosuit_chestplate.png b/src/main/resources/assets/psi/textures/item/psimetal_exosuit_chestplate.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_exosuit_chestplate.png rename to src/main/resources/assets/psi/textures/item/psimetal_exosuit_chestplate.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_exosuit_helmet.png b/src/main/resources/assets/psi/textures/item/psimetal_exosuit_helmet.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_exosuit_helmet.png rename to src/main/resources/assets/psi/textures/item/psimetal_exosuit_helmet.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_exosuit_helmet_sensor.png b/src/main/resources/assets/psi/textures/item/psimetal_exosuit_helmet_sensor.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_exosuit_helmet_sensor.png rename to src/main/resources/assets/psi/textures/item/psimetal_exosuit_helmet_sensor.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_exosuit_leggings.png b/src/main/resources/assets/psi/textures/item/psimetal_exosuit_leggings.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_exosuit_leggings.png rename to src/main/resources/assets/psi/textures/item/psimetal_exosuit_leggings.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_pickaxe.png b/src/main/resources/assets/psi/textures/item/psimetal_pickaxe.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_pickaxe.png rename to src/main/resources/assets/psi/textures/item/psimetal_pickaxe.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_shovel.png b/src/main/resources/assets/psi/textures/item/psimetal_shovel.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_shovel.png rename to src/main/resources/assets/psi/textures/item/psimetal_shovel.png diff --git a/src/main/resources/assets/psi/textures/items/psimetal_sword.png b/src/main/resources/assets/psi/textures/item/psimetal_sword.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/psimetal_sword.png rename to src/main/resources/assets/psi/textures/item/psimetal_sword.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet.png b/src/main/resources/assets/psi/textures/item/spell_bullet.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet.png rename to src/main/resources/assets/psi/textures/item/spell_bullet.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_charge.png b/src/main/resources/assets/psi/textures/item/spell_bullet_charge.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_charge.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_charge.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_charge_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_charge_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_charge_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_charge_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_circle.png b/src/main/resources/assets/psi/textures/item/spell_bullet_circle.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_circle.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_circle.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_circle_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_circle_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_circle_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_circle_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_grenade.png b/src/main/resources/assets/psi/textures/item/spell_bullet_grenade.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_grenade.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_grenade.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_grenade_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_grenade_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_grenade_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_grenade_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_loop.png b/src/main/resources/assets/psi/textures/item/spell_bullet_loop.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_loop.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_loop.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_loop_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_loop_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_loop_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_loop_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_loop_active.png.mcmeta b/src/main/resources/assets/psi/textures/item/spell_bullet_loop_active.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_loop_active.png.mcmeta rename to src/main/resources/assets/psi/textures/item/spell_bullet_loop_active.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_mine.png b/src/main/resources/assets/psi/textures/item/spell_bullet_mine.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_mine.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_mine.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_mine_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_mine_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_mine_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_mine_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_mine_active.png.mcmeta b/src/main/resources/assets/psi/textures/item/spell_bullet_mine_active.png.mcmeta similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_mine_active.png.mcmeta rename to src/main/resources/assets/psi/textures/item/spell_bullet_mine_active.png.mcmeta diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_projectile.png b/src/main/resources/assets/psi/textures/item/spell_bullet_projectile.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_projectile.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_projectile.png diff --git a/src/main/resources/assets/psi/textures/items/spell_bullet_projectile_active.png b/src/main/resources/assets/psi/textures/item/spell_bullet_projectile_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_bullet_projectile_active.png rename to src/main/resources/assets/psi/textures/item/spell_bullet_projectile_active.png diff --git a/src/main/resources/assets/psi/textures/items/spell_drive.png b/src/main/resources/assets/psi/textures/item/spell_drive.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/spell_drive.png rename to src/main/resources/assets/psi/textures/item/spell_drive.png diff --git a/src/main/resources/assets/psi/textures/items/unused/cad_assembly_psimetal_red.png b/src/main/resources/assets/psi/textures/item/unused/cad_assembly_psimetal_red.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/cad_assembly_psimetal_red.png rename to src/main/resources/assets/psi/textures/item/unused/cad_assembly_psimetal_red.png diff --git a/src/main/resources/assets/psi/textures/items/unused/cad_assembly_psimetal_yellow.png b/src/main/resources/assets/psi/textures/item/unused/cad_assembly_psimetal_yellow.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/cad_assembly_psimetal_yellow.png rename to src/main/resources/assets/psi/textures/item/unused/cad_assembly_psimetal_yellow.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_ebony.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_ebony.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_ebony.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_ebony.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_ebony_active.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_ebony_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_ebony_active.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_ebony_active.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_ivory.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_ivory.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_ivory.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_ivory.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_ivory_active.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_ivory_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_ivory_active.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_ivory_active.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_psigem.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_psigem.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_psigem.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_psigem.png diff --git a/src/main/resources/assets/psi/textures/items/unused/spell_booster_psigem_active.png b/src/main/resources/assets/psi/textures/item/unused/spell_booster_psigem_active.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/unused/spell_booster_psigem_active.png rename to src/main/resources/assets/psi/textures/item/unused/spell_booster_psigem_active.png diff --git a/src/main/resources/assets/psi/textures/items/vector_ruler.png b/src/main/resources/assets/psi/textures/item/vector_ruler.png similarity index 100% rename from src/main/resources/assets/psi/textures/items/vector_ruler.png rename to src/main/resources/assets/psi/textures/item/vector_ruler.png diff --git a/src/main/resources/data/psi/patchouli_books/encyclopaedia_psionica/book.json b/src/main/resources/data/psi/patchouli_books/encyclopaedia_psionica/book.json index a8129a1bb..7e436c5eb 100644 --- a/src/main/resources/data/psi/patchouli_books/encyclopaedia_psionica/book.json +++ b/src/main/resources/data/psi/patchouli_books/encyclopaedia_psionica/book.json @@ -7,7 +7,7 @@ "subtitle": "psi.book.subtitle", "open_sound": "psi:book_open", "flip_sound": "psi:book_flip", - "creative_tab": "psi", + "creative_tab": "psi:creative_tab", "use_resource_pack": true, "model": "psi:encyclopaedia_psionica", "macros": { diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta index f0ae1bbf7..4ca644661 100644 --- a/src/main/resources/pack.mcmeta +++ b/src/main/resources/pack.mcmeta @@ -1,6 +1,6 @@ { "pack": { "description": "Psi Resources", - "pack_format": 9 + "pack_format": 15 } } From 0d02ed038eaea3d5a0928576f55feefb0d78f532 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Sat, 27 Apr 2024 23:01:18 +0200 Subject: [PATCH 02/15] Fix PageCount --- .../java/vazkii/psi/client/gui/widget/PiecePanelWidget.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java b/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java index 72cfc46cf..1141e1aba 100644 --- a/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java +++ b/src/main/java/vazkii/psi/client/gui/widget/PiecePanelWidget.java @@ -129,7 +129,7 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { } public int getPageCount() { - return (visibleButtons.size() / PIECES_PER_PAGE) + 1; + return (int) Math.ceil((float) visibleButtons.size() / PIECES_PER_PAGE); } public void populatePanelButtons() { From d39c42a5c5dbde6db2e3a47911a8ffaa923c0bb0 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Sat, 27 Apr 2024 23:20:47 +0200 Subject: [PATCH 03/15] Fix CreativeModeTab --- src/main/java/vazkii/psi/common/core/PsiCreativeTab.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java b/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java index 56f07f8f4..85fa0bd2a 100644 --- a/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java +++ b/src/main/java/vazkii/psi/common/core/PsiCreativeTab.java @@ -9,6 +9,7 @@ package vazkii.psi.common.core; import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.CreativeModeTab; @@ -31,7 +32,7 @@ public class PsiCreativeTab { @SubscribeEvent public static void register(RegisterEvent evt) { evt.register(Registries.CREATIVE_MODE_TAB, creativeModeTabRegisterHelper -> { - CreativeModeTab psiCreativeTab = CreativeModeTab.builder() + CreativeModeTab psiCreativeTab = CreativeModeTab.builder().title(Component.translatable("itemGroup.psi")) .icon(() -> new ItemStack(ModItems.cadAssemblyIron)) .displayItems((parameters, output) -> { output.accept(ModItems.psidust); From 588dc44d45d4dbbbbe6981660cbf8f4cd8c84911 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Tue, 28 May 2024 16:46:08 +0200 Subject: [PATCH 04/15] Fix https://github.com/VazkiiMods/Psi/issues/806 --- .../java/vazkii/psi/common/item/ItemVectorRuler.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/vazkii/psi/common/item/ItemVectorRuler.java b/src/main/java/vazkii/psi/common/item/ItemVectorRuler.java index 1b7aa5c8c..44330f5f0 100644 --- a/src/main/java/vazkii/psi/common/item/ItemVectorRuler.java +++ b/src/main/java/vazkii/psi/common/item/ItemVectorRuler.java @@ -49,13 +49,12 @@ public InteractionResult useOn(UseOnContext ctx) { BlockPos pos = ctx.getClickedPos(); ItemStack stack = ctx.getPlayer().getItemInHand(ctx.getHand()); - int srcY = stack.getOrCreateTag().contains(TAG_SRC_Y) ? stack.getOrCreateTag().getInt(TAG_SRC_Y) : -1; - if(srcY == -1 || ctx.getPlayer().isShiftKeyDown()) { + if(!stack.getOrCreateTag().contains(TAG_SRC_Y) || ctx.getPlayer().isShiftKeyDown()) { stack.getOrCreateTag().putInt(TAG_SRC_X, pos.getX()); stack.getOrCreateTag().putInt(TAG_SRC_Y, pos.getY()); stack.getOrCreateTag().putInt(TAG_SRC_Z, pos.getZ()); - stack.getOrCreateTag().putInt(TAG_DST_Y, -1); + stack.removeTagKey(TAG_DST_Y); } else { stack.getOrCreateTag().putInt(TAG_DST_X, pos.getX()); stack.getOrCreateTag().putInt(TAG_DST_Y, pos.getY()); @@ -76,12 +75,12 @@ public Vector3 getVector(ItemStack stack) { int srcY = stack.getOrCreateTag().getInt(TAG_SRC_Y); int srcZ = stack.getOrCreateTag().getInt(TAG_SRC_Z); - int dstY = stack.getOrCreateTag().contains(TAG_DST_Y) ? stack.getOrCreateTag().getInt(TAG_DST_Y) : -1; - if(dstY == -1) { + if(!stack.getOrCreateTag().contains(TAG_DST_Y)) { return new Vector3(srcX, srcY, srcZ); } int dstX = stack.getOrCreateTag().getInt(TAG_DST_X); + int dstY = stack.getOrCreateTag().getInt(TAG_DST_Y); int dstZ = stack.getOrCreateTag().getInt(TAG_DST_Z); return new Vector3(dstX - srcX, dstY - srcY, dstZ - srcZ); From d176f91eb7dcdef4916613abcf2eddc4b8d184cc Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Tue, 28 May 2024 18:24:00 +0200 Subject: [PATCH 05/15] Fix https://github.com/VazkiiMods/Psi/issues/805 --- .../psi/common/block/tile/container/ContainerCADAssembler.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/vazkii/psi/common/block/tile/container/ContainerCADAssembler.java b/src/main/java/vazkii/psi/common/block/tile/container/ContainerCADAssembler.java index a9d16daf8..3e78238f1 100644 --- a/src/main/java/vazkii/psi/common/block/tile/container/ContainerCADAssembler.java +++ b/src/main/java/vazkii/psi/common/block/tile/container/ContainerCADAssembler.java @@ -214,6 +214,7 @@ public ItemStack quickMoveStack(Player playerIn, int from) { @Override public void removed(Player playerIn) { + super.removed(playerIn); assembler.clearCachedCAD(); } } From 869bee9a4531f6ff3fe720fdc867d56100cb13a4 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Thu, 30 May 2024 22:39:03 +0200 Subject: [PATCH 06/15] Fix MessageSpamlessChat --- .../network/message/MessageSpamlessChat.java | 21 ++++++++++++++++--- .../resources/META-INF/accesstransformer.cfg | 2 ++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/main/java/vazkii/psi/common/network/message/MessageSpamlessChat.java b/src/main/java/vazkii/psi/common/network/message/MessageSpamlessChat.java index 545d16ad0..1f0abe7b6 100644 --- a/src/main/java/vazkii/psi/common/network/message/MessageSpamlessChat.java +++ b/src/main/java/vazkii/psi/common/network/message/MessageSpamlessChat.java @@ -8,6 +8,7 @@ */ package vazkii.psi.common.network.message; +import net.minecraft.client.GuiMessage; import net.minecraft.client.GuiMessageTag; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.ChatComponent; @@ -17,6 +18,7 @@ import net.minecraftforge.network.NetworkEvent; import java.nio.ByteBuffer; +import java.util.ListIterator; import java.util.function.Supplier; public class MessageSpamlessChat { @@ -29,13 +31,13 @@ public class MessageSpamlessChat { public MessageSpamlessChat(Component message, int magic) { this.message = message; this.magic = BASE_MAGIC + magic; - this.signature = new MessageSignature(ByteBuffer.allocate(4).putInt(this.magic).array()); + this.signature = new MessageSignature(ByteBuffer.allocate(256).putInt(this.magic).array()); } public MessageSpamlessChat(FriendlyByteBuf buf) { this.message = buf.readComponent(); this.magic = buf.readInt(); - this.signature = new MessageSignature(ByteBuffer.allocate(4).putInt(this.magic).array()); + this.signature = new MessageSignature(ByteBuffer.allocate(256).putInt(this.magic).array()); } public void encode(FriendlyByteBuf buf) { @@ -46,9 +48,22 @@ public void encode(FriendlyByteBuf buf) { public boolean receive(Supplier context) { context.get().enqueueWork(() -> { ChatComponent chatGui = Minecraft.getInstance().gui.getChat(); - chatGui.deleteMessage(signature); + MessageSpamlessChat.deleteMessage(chatGui, signature); chatGui.addMessage(message, signature, GuiMessageTag.system()); }); return true; } + + public static void deleteMessage(ChatComponent chatGui, MessageSignature pMessageSignature) { + ListIterator listiterator = chatGui.allMessages.listIterator(); + + while(listiterator.hasNext()) { + GuiMessage guimessage = listiterator.next(); + if (pMessageSignature.equals(guimessage.signature())) { + listiterator.remove(); + break; + } + } + chatGui.refreshTrimmedMessage(); + } } diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index a0350e4ca..3fee67f26 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -21,6 +21,8 @@ public net.minecraft.core.Registry m_122978_(Ljava/lang/String;)Lnet/minecraft/r public net.minecraft.core.Registry m_122981_(Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Ljava/util/function/Supplier;)Lnet/minecraft/core/Registry; # registerSimple public net.minecraft.client.resources.model.ModelBakery f_119234_ # UNREFERENCED_TEXTURES public net.minecraft.client.gui.Gui f_92986_ # minecraft +public net.minecraft.client.gui.components.ChatComponent f_93760_ # allMessages +public net.minecraft.client.gui.components.ChatComponent m_241120_()V # refreshTrimmedMessage public net.minecraft.client.gui.components.ChatComponent m_93787_(Lnet/minecraft/network/chat/Component;I)V # addMessage public net.minecraft.client.gui.components.ChatComponent m_93803_(I)V # removeById public net.minecraft.client.renderer.RenderType$CompositeRenderType From 71ccaa6b7349c02af559bb254670681725d8ac2f Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Tue, 11 Jun 2024 22:26:20 +0200 Subject: [PATCH 07/15] Improve "Kicked for Flying" --- .../vazkii/psi/common/core/handler/AdditiveMotionHandler.java | 1 + src/main/resources/META-INF/accesstransformer.cfg | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/vazkii/psi/common/core/handler/AdditiveMotionHandler.java b/src/main/java/vazkii/psi/common/core/handler/AdditiveMotionHandler.java index 3d4c9034d..7d60cc486 100644 --- a/src/main/java/vazkii/psi/common/core/handler/AdditiveMotionHandler.java +++ b/src/main/java/vazkii/psi/common/core/handler/AdditiveMotionHandler.java @@ -50,6 +50,7 @@ public static void onPlayerTick(TickEvent.LevelTickEvent e) { //Otherwise it feels jerky. if(entity instanceof ServerPlayer) { MessageRegister.sendToPlayer(motion, (ServerPlayer) entity); + ((ServerPlayer) entity).connection.aboveGroundTickCount = -80; //Improve "Kicked for Flying" } else { entity.push(vec.x, vec.y, vec.z); } diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index 3fee67f26..56855ed5f 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -26,4 +26,5 @@ public net.minecraft.client.gui.components.ChatComponent m_241120_()V # refreshT public net.minecraft.client.gui.components.ChatComponent m_93787_(Lnet/minecraft/network/chat/Component;I)V # addMessage public net.minecraft.client.gui.components.ChatComponent m_93803_(I)V # removeById public net.minecraft.client.renderer.RenderType$CompositeRenderType -public net.minecraft.client.renderer.RenderStateShard f_173101_ # POSITION_COLOR_TEX_SHADER \ No newline at end of file +public net.minecraft.client.renderer.RenderStateShard f_173101_ # POSITION_COLOR_TEX_SHADER +public net.minecraft.server.network.ServerGamePacketListenerImpl f_9737_ # floatingTickCount \ No newline at end of file From 1931b4f6203286a190f7460b759bb4bc617592be Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Tue, 11 Jun 2024 23:00:58 +0200 Subject: [PATCH 08/15] Fix ToolMaterial --- src/main/java/vazkii/psi/api/PsiAPI.java | 15 +++++- .../api/material/PsimetalToolMaterial.java | 52 ------------------- 2 files changed, 13 insertions(+), 54 deletions(-) delete mode 100644 src/main/java/vazkii/psi/api/material/PsimetalToolMaterial.java diff --git a/src/main/java/vazkii/psi/api/PsiAPI.java b/src/main/java/vazkii/psi/api/PsiAPI.java index a2a40d210..66f461f08 100644 --- a/src/main/java/vazkii/psi/api/PsiAPI.java +++ b/src/main/java/vazkii/psi/api/PsiAPI.java @@ -17,10 +17,16 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; +import net.minecraft.tags.BlockTags; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.Tier; +import net.minecraft.world.item.Tiers; import net.minecraft.world.item.crafting.Ingredient; import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.common.ForgeTier; +import net.minecraftforge.common.TierSortingRegistry; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.CapabilityManager; import net.minecraftforge.common.capabilities.CapabilityToken; @@ -36,14 +42,15 @@ import vazkii.psi.api.internal.DummyMethodHandler; import vazkii.psi.api.internal.IInternalMethodHandler; import vazkii.psi.api.material.PsimetalArmorMaterial; -import vazkii.psi.api.material.PsimetalToolMaterial; import vazkii.psi.api.spell.ISpellAcceptor; import vazkii.psi.api.spell.ISpellImmune; import vazkii.psi.api.spell.SpellPiece; import vazkii.psi.api.spell.detonator.IDetonationHandler; +import vazkii.psi.common.item.base.ModItems; import java.util.Collection; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -83,7 +90,11 @@ public final class PsiAPI { public static final PsimetalArmorMaterial PSIMETAL_ARMOR_MATERIAL = new PsimetalArmorMaterial("psimetal", 18, new int[] { 2, 5, 6, 2 }, 12, SoundEvents.ARMOR_EQUIP_IRON, 0F, () -> Ingredient.of(ForgeRegistries.ITEMS.getValue(new ResourceLocation(MOD_ID, "psimetal"))), 0.0f); - public static final PsimetalToolMaterial PSIMETAL_TOOL_MATERIAL = new PsimetalToolMaterial(); + public static final Tier PSIMETAL_TOOL_MATERIAL = TierSortingRegistry.registerTier( + new ForgeTier(3, 900, 7.8F, 2F, 12, BlockTags.NEEDS_DIAMOND_TOOL, () -> Ingredient.of(ModItems.psimetal)), + new ResourceLocation(MOD_ID, "psimetal_tier"), + List.of(Tiers.DIAMOND), List.of(Tiers.NETHERITE)); + /** * Registers a Spell Piece. diff --git a/src/main/java/vazkii/psi/api/material/PsimetalToolMaterial.java b/src/main/java/vazkii/psi/api/material/PsimetalToolMaterial.java deleted file mode 100644 index be8ff526b..000000000 --- a/src/main/java/vazkii/psi/api/material/PsimetalToolMaterial.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * This class is distributed as part of the Psi Mod. - * Get the Source Code in github: - * https://github.com/Vazkii/Psi - * - * Psi is Open Source and distributed under the - * Psi License: https://psi.vazkii.net/license.php - */ -package vazkii.psi.api.material; - -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.LazyLoadedValue; -import net.minecraft.world.item.Tier; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.registries.ForgeRegistries; - -import vazkii.psi.api.PsiAPI; - -public class PsimetalToolMaterial implements Tier { - private static final LazyLoadedValue REPAIR_MATERIAL = new LazyLoadedValue<>( - () -> Ingredient.of(ForgeRegistries.ITEMS.getValue(new ResourceLocation(PsiAPI.MOD_ID, "psimetal")))); - - @Override - public int getUses() { - return 900; - } - - @Override - public float getSpeed() { - return 7.8F; - } - - @Override - public float getAttackDamageBonus() { - return 2F; - } - - @Override - public int getLevel() { - return 3; - } - - @Override - public int getEnchantmentValue() { - return 12; - } - - @Override - public Ingredient getRepairIngredient() { - return REPAIR_MATERIAL.get(); - } -} From 6d6fe40d865b2213137f36ee941c376b4d417d6b Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Wed, 12 Jun 2024 23:36:39 +0200 Subject: [PATCH 09/15] Fix https://github.com/VazkiiMods/Psi/issues/801 --- build.properties | 2 +- src/main/java/vazkii/psi/client/gui/GuiCADAssembler.java | 2 +- .../psi/common/core/handler/ContributorSpellCircleHandler.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.properties b/build.properties index 7df46c218..b5b678fb7 100644 --- a/build.properties +++ b/build.properties @@ -1,7 +1,7 @@ #Sun Apr 09 14:41:44 WEST 2023 mapping_channel=parchment mod_id=psi -forge_version=47.1.47 +forge_version=47.3.0 jei_version=15.2.0.27 build_number=102 patchy_version=1.20.1-83-FORGE diff --git a/src/main/java/vazkii/psi/client/gui/GuiCADAssembler.java b/src/main/java/vazkii/psi/client/gui/GuiCADAssembler.java index 6c7aec015..0df613236 100644 --- a/src/main/java/vazkii/psi/client/gui/GuiCADAssembler.java +++ b/src/main/java/vazkii/psi/client/gui/GuiCADAssembler.java @@ -53,7 +53,7 @@ protected void renderLabels(GuiGraphics graphics, int mouseX, int mouseY) { int color = 4210752; String name = new ItemStack(ModBlocks.cadAssembler).getHoverName().getString(); - graphics.drawString(this.font, name, imageWidth / 2 - font.width(name) / 2, 10, color); + graphics.drawString(this.font, name, imageWidth / 2 - font.width(name) / 2, 10, color, false); ItemStack cad = assembler.getCachedCAD(player); if(!cad.isEmpty()) { diff --git a/src/main/java/vazkii/psi/common/core/handler/ContributorSpellCircleHandler.java b/src/main/java/vazkii/psi/common/core/handler/ContributorSpellCircleHandler.java index 5a9869de3..e352ca181 100644 --- a/src/main/java/vazkii/psi/common/core/handler/ContributorSpellCircleHandler.java +++ b/src/main/java/vazkii/psi/common/core/handler/ContributorSpellCircleHandler.java @@ -69,7 +69,7 @@ public static boolean isContributor(String name) { @SubscribeEvent public static void onCadTake(CADTakeEvent event) { - if(ContributorSpellCircleHandler.isContributor(event.getPlayer().getName().getString().toLowerCase(Locale.ROOT)) && !((ICAD) event.getCad().getItem()).getComponentInSlot(event.getCad(), EnumCADComponent.DYE).isEmpty()) { + if(ContributorSpellCircleHandler.isContributor(event.getPlayer().getName().getString().toLowerCase(Locale.ROOT)) && !event.getCad().isEmpty() && !((ICAD) event.getCad().getItem()).getComponentInSlot(event.getCad(), EnumCADComponent.DYE).isEmpty()) { ItemStack dyeStack = ((ICAD) event.getCad().getItem()).getComponentInSlot(event.getCad(), EnumCADComponent.DYE); ((ICADColorizer) dyeStack.getItem()).setContributorName(dyeStack, event.getPlayer().getName().getString()); ItemCAD.setComponent(event.getCad(), dyeStack); From 0b19989855a39e07fc181e6f8980c286ae2fe83d Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Sun, 16 Jun 2024 14:38:33 +0200 Subject: [PATCH 10/15] Bump version --- build.properties | 2 +- src/main/java/vazkii/psi/api/PsiAPI.java | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/build.properties b/build.properties index b5b678fb7..4c255e773 100644 --- a/build.properties +++ b/build.properties @@ -3,7 +3,7 @@ mapping_channel=parchment mod_id=psi forge_version=47.3.0 jei_version=15.2.0.27 -build_number=102 +build_number=103 patchy_version=1.20.1-83-FORGE dir_output=../Build Output/Psi/ version=1.20 diff --git a/src/main/java/vazkii/psi/api/PsiAPI.java b/src/main/java/vazkii/psi/api/PsiAPI.java index 66f461f08..53772eb36 100644 --- a/src/main/java/vazkii/psi/api/PsiAPI.java +++ b/src/main/java/vazkii/psi/api/PsiAPI.java @@ -20,7 +20,6 @@ import net.minecraft.tags.BlockTags; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; import net.minecraft.world.item.Tier; import net.minecraft.world.item.Tiers; import net.minecraft.world.item.crafting.Ingredient; From 57ef068db3b55143d6c75a024dd893f3b1289fe7 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Thu, 1 Aug 2024 23:01:02 +0200 Subject: [PATCH 11/15] Remove Tool requirement --- .../psi/common/block/base/ModBlocks.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/vazkii/psi/common/block/base/ModBlocks.java b/src/main/java/vazkii/psi/common/block/base/ModBlocks.java index 3fbe2bd17..2fec2b010 100644 --- a/src/main/java/vazkii/psi/common/block/base/ModBlocks.java +++ b/src/main/java/vazkii/psi/common/block/base/ModBlocks.java @@ -64,18 +64,18 @@ public class ModBlocks { @SubscribeEvent public static void register(RegisterEvent evt) { evt.register(ForgeRegistries.Keys.BLOCKS, helper -> { - cadAssembler = new BlockCADAssembler(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).noOcclusion()); - programmer = new BlockProgrammer(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).noOcclusion()); - conjured = new BlockConjured(Block.Properties.of().mapColor(MapColor.NONE).instrument(NoteBlockInstrument.HAT).strength(0.3F).sound(SoundType.GLASS).noOcclusion().noLootTable().lightLevel(state -> state.getValue(BlockConjured.LIGHT) ? 15 : 0).noOcclusion().isValidSpawn(NO_SPAWN).isRedstoneConductor(NO_SUFFOCATION).isSuffocating(NO_SUFFOCATION).isViewBlocking(NO_SUFFOCATION)); - psidustBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psimetalBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psigemBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psimetalPlateBlack = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psimetalPlateBlackLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).lightLevel((blockState) -> 15)); - psimetalPlateWhite = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psimetalPlateWhiteLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL).lightLevel((blockstate) -> 15)); - psimetalEbony = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); - psimetalIvory = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).requiresCorrectToolForDrops().strength(5, 10).sound(SoundType.METAL)); + cadAssembler = new BlockCADAssembler(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL).noOcclusion()); + programmer = new BlockProgrammer(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL).noOcclusion()); + conjured = new BlockConjured(Block.Properties.of().mapColor(MapColor.NONE).instrument(NoteBlockInstrument.HAT).instabreak().sound(SoundType.GLASS).noOcclusion().noLootTable().lightLevel(state -> state.getValue(BlockConjured.LIGHT) ? 15 : 0).noOcclusion().isValidSpawn(NO_SPAWN).isRedstoneConductor(NO_SUFFOCATION).isSuffocating(NO_SUFFOCATION).isViewBlocking(NO_SUFFOCATION)); + psidustBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psimetalBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psigemBlock = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psimetalPlateBlack = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psimetalPlateBlackLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL).lightLevel((blockState) -> 15)); + psimetalPlateWhite = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psimetalPlateWhiteLight = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL).lightLevel((blockstate) -> 15)); + psimetalEbony = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); + psimetalIvory = new Block(Block.Properties.of().mapColor(MapColor.METAL).instrument(NoteBlockInstrument.IRON_XYLOPHONE).strength(5, 10).sound(SoundType.METAL)); helper.register(new ResourceLocation(LibMisc.MOD_ID, LibBlockNames.CAD_ASSEMBLER), cadAssembler); helper.register(new ResourceLocation(LibMisc.MOD_ID, LibBlockNames.PROGRAMMER), programmer); From 4325a772f1bd9c6444f2574f8a4a9602406b0694 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Wed, 4 Sep 2024 21:23:19 +0200 Subject: [PATCH 12/15] Fix rounding error --- src/main/java/vazkii/psi/api/internal/Vector3.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/main/java/vazkii/psi/api/internal/Vector3.java b/src/main/java/vazkii/psi/api/internal/Vector3.java index 405cef077..788d4477c 100644 --- a/src/main/java/vazkii/psi/api/internal/Vector3.java +++ b/src/main/java/vazkii/psi/api/internal/Vector3.java @@ -10,7 +10,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.Vec3i; import net.minecraft.world.entity.Entity; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.phys.AABB; @@ -250,12 +249,8 @@ public Vec3 toVec3D() { return new Vec3(x, y, z); } - public Vec3i toVec3i() { - return new Vec3i((int) x, (int) y, (int) z); - } - public BlockPos toBlockPos() { - return new BlockPos(toVec3i()); + return BlockPos.containing(x, y, z); } public double angle(Vector3 vec) { From 7ca6118a25fd5129ea5512f16fa9000a4b5f3069 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Mon, 28 Oct 2024 22:51:22 +0100 Subject: [PATCH 13/15] Fix Assembler deleting Items --- .../common/block/tile/TileCADAssembler.java | 81 +++++++++++-------- .../common/item/armor/ItemPsimetalArmor.java | 3 + 2 files changed, 52 insertions(+), 32 deletions(-) diff --git a/src/main/java/vazkii/psi/common/block/tile/TileCADAssembler.java b/src/main/java/vazkii/psi/common/block/tile/TileCADAssembler.java index df7163e5c..6bd93f1b6 100644 --- a/src/main/java/vazkii/psi/common/block/tile/TileCADAssembler.java +++ b/src/main/java/vazkii/psi/common/block/tile/TileCADAssembler.java @@ -59,31 +59,8 @@ public class TileCADAssembler extends BlockEntity implements ITileCADAssembler, @ObjectHolder(registryName = "minecraft:block_entity_type", value = LibMisc.PREFIX_MOD + LibBlockNames.CAD_ASSEMBLER) public static BlockEntityType TYPE; - private final IItemHandlerModifiable inventory = new ItemStackHandler(6) { - @Override - protected void onContentsChanged(int slot) { - super.onContentsChanged(slot); - if(0 < slot && slot < 6) { - clearCachedCAD(); - } - } + private final CADStackHandler inventory = new CADStackHandler(6); - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - if(stack.isEmpty()) { - return true; - } - - if(slot == 0) { - return ISocketable.isSocketable(stack); - } else if(slot < 6) { - return stack.getItem() instanceof ICADComponent && - ((ICADComponent) stack.getItem()).getComponentType(stack) == EnumCADComponent.values()[slot - 1]; - } - - return false; - } - }; private final IItemHandler publicInv = new IItemHandler() { @Override public int getSlots() { @@ -237,11 +214,7 @@ public boolean isBulletSlotEnabled(int slot) { @Override protected void saveAdditional(CompoundTag tag) { super.saveAdditional(tag); - NonNullList items = NonNullList.withSize(inventory.getSlots(), ItemStack.EMPTY); - for(int i = 0; i < inventory.getSlots(); i++) { - items.set(i, inventory.getStackInSlot(i)); - } - ContainerHelper.saveAllItems(tag, items); + ContainerHelper.saveAllItems(tag, inventory.getItems()); } @Override @@ -250,10 +223,13 @@ public void load(CompoundTag cmp) { readPacketNBT(cmp); } + + public void readPacketNBT(@Nonnull CompoundTag tag) { // Migrate old CAD assemblers to the new format - if(tag.getInt("version") < 1) { - ListTag items = tag.getList("Items", 10); + ListTag items = tag.getList("Items", 10); + if(items.size() == 19) { + for(int i = 0; i < inventory.getSlots(); i++) { inventory.setStackInSlot(i, ItemStack.EMPTY); } @@ -295,7 +271,7 @@ public void readPacketNBT(@Nonnull CompoundTag tag) { } } } else { - //CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.readNBT(inventory, null, tag.getList("Items", Tag.TAG_COMPOUND)); //TODO Fix this but we need answers + ContainerHelper.loadAllItems(tag, inventory.getItems()); } } @@ -324,4 +300,45 @@ public Component getDisplayName() { public AbstractContainerMenu createMenu(int i, Inventory playerInventory, Player playerEntity) { return new ContainerCADAssembler(i, playerInventory, this); } + + private class CADStackHandler extends ItemStackHandler { + + + private CADStackHandler(int size) { + super(size); + } + + private NonNullList getItems() { + return this.stacks; + } + + private void setItems(NonNullList pItems) { + this.stacks = pItems; + } + + @Override + protected void onContentsChanged(int slot) { + super.onContentsChanged(slot); + if (0 < slot && slot < 6) { + clearCachedCAD(); + } + setChanged(); + } + + @Override + public boolean isItemValid(int slot, @Nonnull ItemStack stack) { + if (stack.isEmpty()) { + return true; + } + + if (slot == 0) { + return ISocketable.isSocketable(stack); + } else if (slot < 6) { + return stack.getItem() instanceof ICADComponent && + ((ICADComponent) stack.getItem()).getComponentType(stack).ordinal() == slot - 1; + } + + return false; + } + } } diff --git a/src/main/java/vazkii/psi/common/item/armor/ItemPsimetalArmor.java b/src/main/java/vazkii/psi/common/item/armor/ItemPsimetalArmor.java index c3a10ae70..686879ab0 100644 --- a/src/main/java/vazkii/psi/common/item/armor/ItemPsimetalArmor.java +++ b/src/main/java/vazkii/psi/common/item/armor/ItemPsimetalArmor.java @@ -180,6 +180,9 @@ public int getColor(@Nonnull ItemStack stack) { return ICADColorizer.DEFAULT_SPELL_COLOR; } + public void setColor(ItemStack stack, int color) { + } + @Override public void initializeClient(Consumer consumer) { consumer.accept(new IClientItemExtensions() { From 4cf8767f1bfe031fe4c850cedc959a48d18714c2 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Mon, 28 Oct 2024 23:05:10 +0100 Subject: [PATCH 14/15] Fixed mining level https://github.com/TheidenHD/Psi/issues/2 --- src/main/java/vazkii/psi/api/PsiAPI.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/vazkii/psi/api/PsiAPI.java b/src/main/java/vazkii/psi/api/PsiAPI.java index 53772eb36..5ff880946 100644 --- a/src/main/java/vazkii/psi/api/PsiAPI.java +++ b/src/main/java/vazkii/psi/api/PsiAPI.java @@ -90,7 +90,7 @@ public final class PsiAPI { public static final PsimetalArmorMaterial PSIMETAL_ARMOR_MATERIAL = new PsimetalArmorMaterial("psimetal", 18, new int[] { 2, 5, 6, 2 }, 12, SoundEvents.ARMOR_EQUIP_IRON, 0F, () -> Ingredient.of(ForgeRegistries.ITEMS.getValue(new ResourceLocation(MOD_ID, "psimetal"))), 0.0f); public static final Tier PSIMETAL_TOOL_MATERIAL = TierSortingRegistry.registerTier( - new ForgeTier(3, 900, 7.8F, 2F, 12, BlockTags.NEEDS_DIAMOND_TOOL, () -> Ingredient.of(ModItems.psimetal)), + new ForgeTier(3, 900, 7.8F, 2F, 12, BlockTags.create(new ResourceLocation(MOD_ID, "needs_psimetal_tool")), () -> Ingredient.of(ModItems.psimetal)), new ResourceLocation(MOD_ID, "psimetal_tier"), List.of(Tiers.DIAMOND), List.of(Tiers.NETHERITE)); From 1ac1ea9203fc5c368418e39d3345af58c4753b35 Mon Sep 17 00:00:00 2001 From: TheidenHD Date: Mon, 28 Oct 2024 23:24:38 +0100 Subject: [PATCH 15/15] Fix Data --- .../tags/damage_type/bypasses_armor.json | 5 + .../tags/damage_type/bypasses_effects.json | 5 + .../damage_type/bypasses_enchantments.json | 5 + .../tags/damage_type/bypasses_resistance.json | 5 + .../tags/damage_type/bypasses_shield.json | 5 + .../{psi => building_blocks}/ebony_block.json | 3 +- .../ebony_ingot_shapeless.json | 3 +- .../{psi => building_blocks}/ivory_block.json | 3 +- .../ivory_ingot_shapeless.json | 3 +- .../psidust_block.json | 3 +- .../psidust_shapeless.json | 3 +- .../psigem_block.json | 3 +- .../psigem_shapeless.json | 3 +- .../psimetal_block.json | 3 +- .../psimetal_shapeless.json | 3 +- .../recipes/{psi => combat}/psimetal_axe.json | 3 +- .../psimetal_exosuit_boots.json | 3 +- .../psimetal_exosuit_chestplate.json | 3 +- .../psimetal_exosuit_helmet.json | 3 +- .../psimetal_exosuit_leggings.json | 3 +- .../{psi => combat}/psimetal_pickaxe.json | 3 +- .../{psi => combat}/psimetal_shovel.json | 3 +- .../{psi => combat}/psimetal_sword.json | 3 +- .../psimetal_plate_black.json | 3 +- .../psimetal_plate_black_light.json | 3 +- .../psimetal_plate_white.json | 3 +- .../psimetal_plate_white_light.json | 3 +- .../recipes/{psi => misc}/assembler.json | 3 +- .../recipes/{psi => misc}/ebony_psimetal.json | 3 +- .../{psi => misc}/exosuit_sensor_heat.json | 3 +- .../{psi => misc}/exosuit_sensor_light.json | 3 +- .../{psi => misc}/exosuit_sensor_stress.json | 3 +- .../{psi => misc}/exosuit_sensor_trigger.json | 3 +- .../{psi => misc}/exosuit_sensor_water.json | 3 +- .../recipes/{psi => misc}/ivory_psimetal.json | 3 +- .../recipes/{psi => misc}/programmer.json | 3 +- .../{psi => tools}/cad_assembly_ebony.json | 3 +- .../{psi => tools}/cad_assembly_gold.json | 3 +- .../{psi => tools}/cad_assembly_iron.json | 3 +- .../{psi => tools}/cad_assembly_ivory.json | 3 +- .../{psi => tools}/cad_assembly_psimetal.json | 3 +- .../{psi => tools}/cad_battery_basic.json | 3 +- .../{psi => tools}/cad_battery_extended.json | 3 +- .../cad_battery_ultradense.json | 3 +- .../{psi => tools}/cad_colorizer_black.json | 3 +- .../{psi => tools}/cad_colorizer_blue.json | 3 +- .../{psi => tools}/cad_colorizer_brown.json | 3 +- .../{psi => tools}/cad_colorizer_cyan.json | 3 +- .../{psi => tools}/cad_colorizer_empty.json | 3 +- .../{psi => tools}/cad_colorizer_gray.json | 3 +- .../{psi => tools}/cad_colorizer_green.json | 3 +- .../cad_colorizer_light_blue.json | 3 +- .../cad_colorizer_light_gray.json | 3 +- .../{psi => tools}/cad_colorizer_lime.json | 3 +- .../{psi => tools}/cad_colorizer_magenta.json | 3 +- .../{psi => tools}/cad_colorizer_orange.json | 3 +- .../{psi => tools}/cad_colorizer_pink.json | 3 +- .../{psi => tools}/cad_colorizer_psi.json | 3 +- .../{psi => tools}/cad_colorizer_purple.json | 3 +- .../{psi => tools}/cad_colorizer_rainbow.json | 3 +- .../{psi => tools}/cad_colorizer_red.json | 3 +- .../{psi => tools}/cad_colorizer_white.json | 3 +- .../{psi => tools}/cad_colorizer_yellow.json | 3 +- .../{psi => tools}/cad_core_basic.json | 3 +- .../{psi => tools}/cad_core_conductive.json | 3 +- .../{psi => tools}/cad_core_hyperclocked.json | 3 +- .../{psi => tools}/cad_core_overclocked.json | 3 +- .../{psi => tools}/cad_core_radiative.json | 3 +- .../{psi => tools}/cad_socket_basic.json | 3 +- .../{psi => tools}/cad_socket_huge.json | 3 +- .../{psi => tools}/cad_socket_large.json | 3 +- .../{psi => tools}/cad_socket_signaling.json | 3 +- .../cad_socket_transmissive.json | 3 +- .../recipes/{psi => tools}/detonator.json | 3 +- .../{psi => tools}/exosuit_controller.json | 3 +- .../{psi => tools}/spell_bullet_basic.json | 3 +- .../{psi => tools}/spell_bullet_charge.json | 3 +- .../spell_bullet_charge_upgrade.json | 3 +- .../{psi => tools}/spell_bullet_circle.json | 3 +- .../spell_bullet_circle_upgrade.json | 3 +- .../{psi => tools}/spell_bullet_grenade.json | 3 +- .../spell_bullet_grenade_upgrade.json | 3 +- .../{psi => tools}/spell_bullet_loopcast.json | 3 +- .../spell_bullet_loopcast_upgrade.json | 3 +- .../{psi => tools}/spell_bullet_mine.json | 3 +- .../spell_bullet_mine_upgrade.json | 3 +- .../spell_bullet_projectile.json | 3 +- .../spell_bullet_projectile_upgrade.json | 3 +- .../recipes/{psi => tools}/spell_drive.json | 3 +- .../recipes/{psi => tools}/vector_ruler.json | 3 +- .../resources/data/psi/recipes/assembler.json | 4 +- .../data/psi/recipes/cad_assembly_ebony.json | 4 +- .../data/psi/recipes/cad_assembly_gold.json | 4 +- .../data/psi/recipes/cad_assembly_iron.json | 4 +- .../data/psi/recipes/cad_assembly_ivory.json | 4 +- .../psi/recipes/cad_assembly_psimetal.json | 4 +- .../data/psi/recipes/cad_battery_basic.json | 4 +- .../psi/recipes/cad_battery_extended.json | 4 +- .../psi/recipes/cad_battery_ultradense.json | 4 +- .../data/psi/recipes/cad_colorizer_black.json | 4 +- .../data/psi/recipes/cad_colorizer_blue.json | 4 +- .../data/psi/recipes/cad_colorizer_brown.json | 4 +- .../data/psi/recipes/cad_colorizer_cyan.json | 4 +- .../data/psi/recipes/cad_colorizer_empty.json | 4 +- .../data/psi/recipes/cad_colorizer_gray.json | 4 +- .../data/psi/recipes/cad_colorizer_green.json | 4 +- .../psi/recipes/cad_colorizer_light_blue.json | 4 +- .../psi/recipes/cad_colorizer_light_gray.json | 4 +- .../data/psi/recipes/cad_colorizer_lime.json | 4 +- .../psi/recipes/cad_colorizer_magenta.json | 4 +- .../psi/recipes/cad_colorizer_orange.json | 4 +- .../data/psi/recipes/cad_colorizer_pink.json | 4 +- .../data/psi/recipes/cad_colorizer_psi.json | 4 +- .../psi/recipes/cad_colorizer_purple.json | 4 +- .../psi/recipes/cad_colorizer_rainbow.json | 4 +- .../data/psi/recipes/cad_colorizer_red.json | 4 +- .../data/psi/recipes/cad_colorizer_white.json | 4 +- .../psi/recipes/cad_colorizer_yellow.json | 4 +- .../data/psi/recipes/cad_core_basic.json | 4 +- .../data/psi/recipes/cad_core_conductive.json | 4 +- .../psi/recipes/cad_core_hyperclocked.json | 4 +- .../psi/recipes/cad_core_overclocked.json | 4 +- .../data/psi/recipes/cad_core_radiative.json | 4 +- .../data/psi/recipes/cad_socket_basic.json | 4 +- .../data/psi/recipes/cad_socket_huge.json | 4 +- .../data/psi/recipes/cad_socket_large.json | 4 +- .../psi/recipes/cad_socket_signaling.json | 4 +- .../psi/recipes/cad_socket_transmissive.json | 4 +- .../resources/data/psi/recipes/detonator.json | 4 +- .../psi/recipes/dynamic/bullet_to_drive.json | 3 +- .../psi/recipes/dynamic/colorizer_change.json | 3 +- .../psi/recipes/dynamic/drive_duplicate.json | 3 +- .../data/psi/recipes/dynamic/scavenge.json | 3 +- .../psi/recipes/dynamic/sensor_attach.json | 3 +- .../psi/recipes/dynamic/sensor_remove.json | 3 +- .../data/psi/recipes/ebony_block.json | 4 +- .../psi/recipes/ebony_ingot_shapeless.json | 1 + .../data/psi/recipes/ebony_psimetal.json | 4 +- .../data/psi/recipes/exosuit_controller.json | 4 +- .../data/psi/recipes/exosuit_sensor_heat.json | 4 +- .../psi/recipes/exosuit_sensor_light.json | 4 +- .../psi/recipes/exosuit_sensor_stress.json | 4 +- .../psi/recipes/exosuit_sensor_trigger.json | 4 +- .../psi/recipes/exosuit_sensor_water.json | 4 +- .../data/psi/recipes/ivory_block.json | 4 +- .../psi/recipes/ivory_ingot_shapeless.json | 1 + .../data/psi/recipes/ivory_psimetal.json | 4 +- .../data/psi/recipes/programmer.json | 4 +- .../data/psi/recipes/psidust_block.json | 4 +- .../data/psi/recipes/psidust_shapeless.json | 1 + .../data/psi/recipes/psigem_block.json | 4 +- .../data/psi/recipes/psigem_shapeless.json | 1 + .../data/psi/recipes/psimetal_axe.json | 4 +- .../data/psi/recipes/psimetal_block.json | 4 +- .../psi/recipes/psimetal_exosuit_boots.json | 4 +- .../recipes/psimetal_exosuit_chestplate.json | 4 +- .../psi/recipes/psimetal_exosuit_helmet.json | 4 +- .../recipes/psimetal_exosuit_leggings.json | 4 +- .../data/psi/recipes/psimetal_pickaxe.json | 4 +- .../psi/recipes/psimetal_plate_black.json | 4 +- .../recipes/psimetal_plate_black_light.json | 1 + .../psi/recipes/psimetal_plate_white.json | 4 +- .../recipes/psimetal_plate_white_light.json | 1 + .../data/psi/recipes/psimetal_shapeless.json | 1 + .../data/psi/recipes/psimetal_shovel.json | 4 +- .../data/psi/recipes/psimetal_sword.json | 4 +- .../data/psi/recipes/spell_bullet_basic.json | 4 +- .../data/psi/recipes/spell_bullet_charge.json | 4 +- .../recipes/spell_bullet_charge_upgrade.json | 1 + .../data/psi/recipes/spell_bullet_circle.json | 4 +- .../recipes/spell_bullet_circle_upgrade.json | 1 + .../psi/recipes/spell_bullet_grenade.json | 4 +- .../recipes/spell_bullet_grenade_upgrade.json | 1 + .../psi/recipes/spell_bullet_loopcast.json | 4 +- .../spell_bullet_loopcast_upgrade.json | 1 + .../data/psi/recipes/spell_bullet_mine.json | 4 +- .../recipes/spell_bullet_mine_upgrade.json | 1 + .../psi/recipes/spell_bullet_projectile.json | 4 +- .../spell_bullet_projectile_upgrade.json | 1 + .../data/psi/recipes/spell_drive.json | 4 +- .../data/psi/recipes/vector_ruler.json | 4 +- .../core/handler/DamageTypeHandler.java | 2 +- .../core/handler/PlayerDataHandler.java | 2 +- .../vazkii/psi/common/lib/LibResources.java | 5 +- .../java/vazkii/psi/common/lib/ModTags.java | 6 -- .../java/vazkii/psi/data/DataGenerator.java | 1 - .../psi/data/PsiBlockModelGenerator.java | 20 ++-- .../psi/data/PsiDamageTypeTagsProvider.java | 11 +- .../vazkii/psi/data/PsiRecipeGenerator.java | 77 +++++++++++-- .../psi/data/PsiTrickRecipeGenerator.java | 101 ------------------ .../data/psi/damage_type/psi_overload.json | 5 + 191 files changed, 533 insertions(+), 296 deletions(-) create mode 100644 src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json create mode 100644 src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json create mode 100644 src/generated/resources/data/minecraft/tags/damage_type/bypasses_enchantments.json create mode 100644 src/generated/resources/data/minecraft/tags/damage_type/bypasses_resistance.json create mode 100644 src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/ebony_block.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/ebony_ingot_shapeless.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/ivory_block.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/ivory_ingot_shapeless.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psidust_block.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psidust_shapeless.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psigem_block.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psigem_shapeless.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psimetal_block.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => building_blocks}/psimetal_shapeless.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_axe.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_exosuit_boots.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_exosuit_chestplate.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_exosuit_helmet.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_exosuit_leggings.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_pickaxe.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_shovel.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => combat}/psimetal_sword.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => decorations}/psimetal_plate_black.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => decorations}/psimetal_plate_black_light.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => decorations}/psimetal_plate_white.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => decorations}/psimetal_plate_white_light.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/assembler.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/ebony_psimetal.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/exosuit_sensor_heat.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/exosuit_sensor_light.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/exosuit_sensor_stress.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/exosuit_sensor_trigger.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/exosuit_sensor_water.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/ivory_psimetal.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => misc}/programmer.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_assembly_ebony.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_assembly_gold.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_assembly_iron.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_assembly_ivory.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_assembly_psimetal.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_battery_basic.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_battery_extended.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_battery_ultradense.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_black.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_blue.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_brown.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_cyan.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_empty.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_gray.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_green.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_light_blue.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_light_gray.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_lime.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_magenta.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_orange.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_pink.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_psi.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_purple.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_rainbow.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_red.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_white.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_colorizer_yellow.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_core_basic.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_core_conductive.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_core_hyperclocked.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_core_overclocked.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_core_radiative.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_socket_basic.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_socket_huge.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_socket_large.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_socket_signaling.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/cad_socket_transmissive.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/detonator.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/exosuit_controller.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_basic.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_charge.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_charge_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_circle.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_circle_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_grenade.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_grenade_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_loopcast.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_loopcast_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_mine.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_mine_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_projectile.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_bullet_projectile_upgrade.json (94%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/spell_drive.json (93%) rename src/generated/resources/data/psi/advancements/recipes/{psi => tools}/vector_ruler.json (93%) delete mode 100644 src/main/java/vazkii/psi/data/PsiTrickRecipeGenerator.java create mode 100644 src/main/resources/data/psi/damage_type/psi_overload.json diff --git a/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json new file mode 100644 index 000000000..001b22473 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json @@ -0,0 +1,5 @@ +{ + "values": [ + "psi:psi_overload" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json new file mode 100644 index 000000000..001b22473 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json @@ -0,0 +1,5 @@ +{ + "values": [ + "psi:psi_overload" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/damage_type/bypasses_enchantments.json b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_enchantments.json new file mode 100644 index 000000000..001b22473 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_enchantments.json @@ -0,0 +1,5 @@ +{ + "values": [ + "psi:psi_overload" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/damage_type/bypasses_resistance.json b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_resistance.json new file mode 100644 index 000000000..001b22473 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_resistance.json @@ -0,0 +1,5 @@ +{ + "values": [ + "psi:psi_overload" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json new file mode 100644 index 000000000..001b22473 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json @@ -0,0 +1,5 @@ +{ + "values": [ + "psi:psi_overload" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_block.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_block.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/ebony_block.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_block.json index 9bf3e3c0b..f9690629e 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_block.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_block.json @@ -28,5 +28,6 @@ "recipes": [ "psi:ebony_block" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_ingot_shapeless.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_ingot_shapeless.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/ebony_ingot_shapeless.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_ingot_shapeless.json index 9024174f6..29e30e565 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_ingot_shapeless.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ebony_ingot_shapeless.json @@ -28,5 +28,6 @@ "recipes": [ "psi:ebony_ingot_shapeless" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_block.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_block.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/ivory_block.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_block.json index 1ea847d65..4e2165fd6 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_block.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_block.json @@ -28,5 +28,6 @@ "recipes": [ "psi:ivory_block" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_ingot_shapeless.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_ingot_shapeless.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/ivory_ingot_shapeless.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_ingot_shapeless.json index 129c1970a..f0d8c5bdc 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_ingot_shapeless.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/ivory_ingot_shapeless.json @@ -28,5 +28,6 @@ "recipes": [ "psi:ivory_ingot_shapeless" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psidust_block.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_block.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psidust_block.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_block.json index 814b54173..56b3904f9 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psidust_block.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_block.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psidust_block" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psidust_shapeless.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_shapeless.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psidust_shapeless.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_shapeless.json index 4670eca81..30e4c9181 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psidust_shapeless.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psidust_shapeless.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psidust_shapeless" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psigem_block.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_block.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psigem_block.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_block.json index 4b1eac93b..6bc0d852a 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psigem_block.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_block.json @@ -30,5 +30,6 @@ "recipes": [ "psi:psigem_block" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psigem_shapeless.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_shapeless.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psigem_shapeless.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_shapeless.json index 656118d09..282ad69e6 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psigem_shapeless.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psigem_shapeless.json @@ -30,5 +30,6 @@ "recipes": [ "psi:psigem_shapeless" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_block.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_block.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_block.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_block.json index 47494da8b..91b08a286 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_block.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_block.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_block" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shapeless.json b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_shapeless.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shapeless.json rename to src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_shapeless.json index ffc7a51dc..af888da97 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shapeless.json +++ b/src/generated/resources/data/psi/advancements/recipes/building_blocks/psimetal_shapeless.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_shapeless" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_axe.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_axe.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_axe.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_axe.json index 95ba96a81..b6242d1ec 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_axe.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_axe.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_axe" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_boots.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_boots.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_boots.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_boots.json index a4b83fe48..a514ca838 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_boots.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_boots.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_exosuit_boots" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_chestplate.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_chestplate.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_chestplate.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_chestplate.json index 07325994e..cbdd0f5ea 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_chestplate.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_chestplate.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_exosuit_chestplate" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_helmet.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_helmet.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_helmet.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_helmet.json index b59ed86f9..504982c70 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_helmet.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_helmet.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_exosuit_helmet" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_leggings.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_leggings.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_leggings.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_leggings.json index 8347293a9..0d55ece40 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_exosuit_leggings.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_exosuit_leggings.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_exosuit_leggings" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_pickaxe.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_pickaxe.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_pickaxe.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_pickaxe.json index 2c028c71a..816847421 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_pickaxe.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_pickaxe.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_pickaxe" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shovel.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_shovel.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shovel.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_shovel.json index cdb9931c3..de9a0853d 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_shovel.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_shovel.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_shovel" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_sword.json b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_sword.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_sword.json rename to src/generated/resources/data/psi/advancements/recipes/combat/psimetal_sword.json index 676bbe6bf..e1b854cdd 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_sword.json +++ b/src/generated/resources/data/psi/advancements/recipes/combat/psimetal_sword.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_sword" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black.json b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black.json rename to src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black.json index 9c82c38a9..e6224f511 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black.json +++ b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_plate_black" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black_light.json b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black_light.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black_light.json rename to src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black_light.json index 931d1d531..ceba556a3 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_black_light.json +++ b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_black_light.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_plate_black_light" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white.json b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white.json rename to src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white.json index ee3e26d68..170ab0d36 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white.json +++ b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_plate_white" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white_light.json b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white_light.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white_light.json rename to src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white_light.json index 18644ec0a..3a0c16074 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/psimetal_plate_white_light.json +++ b/src/generated/resources/data/psi/advancements/recipes/decorations/psimetal_plate_white_light.json @@ -28,5 +28,6 @@ "recipes": [ "psi:psimetal_plate_white_light" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/assembler.json b/src/generated/resources/data/psi/advancements/recipes/misc/assembler.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/assembler.json rename to src/generated/resources/data/psi/advancements/recipes/misc/assembler.json index 8c98120fe..5c5a0aac5 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/assembler.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/assembler.json @@ -28,5 +28,6 @@ "recipes": [ "psi:assembler" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_psimetal.json b/src/generated/resources/data/psi/advancements/recipes/misc/ebony_psimetal.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/ebony_psimetal.json rename to src/generated/resources/data/psi/advancements/recipes/misc/ebony_psimetal.json index 97002af38..fb2aff576 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ebony_psimetal.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/ebony_psimetal.json @@ -30,5 +30,6 @@ "recipes": [ "psi:ebony_psimetal" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_heat.json b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_heat.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_heat.json rename to src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_heat.json index 8c2db4ba9..81b9baff7 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_heat.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_heat.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_sensor_heat" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_light.json b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_light.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_light.json rename to src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_light.json index 4ba42c8a6..9d199c1f2 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_light.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_light.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_sensor_light" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_stress.json b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_stress.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_stress.json rename to src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_stress.json index 41736178b..4d5c2e3e9 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_stress.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_stress.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_sensor_stress" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_trigger.json b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_trigger.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_trigger.json rename to src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_trigger.json index 130eec6e4..2937364b5 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_trigger.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_trigger.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_sensor_trigger" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_water.json b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_water.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_water.json rename to src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_water.json index 097501758..1270e47c7 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_sensor_water.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/exosuit_sensor_water.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_sensor_water" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_psimetal.json b/src/generated/resources/data/psi/advancements/recipes/misc/ivory_psimetal.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/ivory_psimetal.json rename to src/generated/resources/data/psi/advancements/recipes/misc/ivory_psimetal.json index 488742745..fa5ce71ab 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/ivory_psimetal.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/ivory_psimetal.json @@ -30,5 +30,6 @@ "recipes": [ "psi:ivory_psimetal" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/programmer.json b/src/generated/resources/data/psi/advancements/recipes/misc/programmer.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/programmer.json rename to src/generated/resources/data/psi/advancements/recipes/misc/programmer.json index 5baaffed5..369fc3494 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/programmer.json +++ b/src/generated/resources/data/psi/advancements/recipes/misc/programmer.json @@ -28,5 +28,6 @@ "recipes": [ "psi:programmer" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ebony.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ebony.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ebony.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ebony.json index 9ee47c9dd..172d03be9 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ebony.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ebony.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_assembly_ebony" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_gold.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_gold.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_gold.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_gold.json index 5c2244892..0a81b0123 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_gold.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_gold.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_assembly_gold" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_iron.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_iron.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_iron.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_iron.json index a1207536f..471e58f6e 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_iron.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_iron.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_assembly_iron" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ivory.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ivory.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ivory.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ivory.json index 8a7b9f995..b83c20158 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_ivory.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_ivory.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_assembly_ivory" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_psimetal.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_psimetal.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_psimetal.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_psimetal.json index d7371a934..007ee62ab 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_assembly_psimetal.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_assembly_psimetal.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_assembly_psimetal" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_basic.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_basic.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_basic.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_basic.json index 06428c547..e45355838 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_basic.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_basic.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_battery_basic" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_extended.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_extended.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_extended.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_extended.json index abaeb2771..fbc1782a4 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_extended.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_extended.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_battery_extended" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_ultradense.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_ultradense.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_ultradense.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_ultradense.json index 45dff8ab1..39680e31a 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_battery_ultradense.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_battery_ultradense.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_battery_ultradense" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_black.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_black.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_black.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_black.json index f008ba9a3..8959612ab 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_black.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_black.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_black" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_blue.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_blue.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_blue.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_blue.json index 62961f28c..574fec1ac 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_blue.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_blue.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_blue" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_brown.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_brown.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_brown.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_brown.json index 8ba2edda4..930960815 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_brown.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_brown.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_brown" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_cyan.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_cyan.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_cyan.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_cyan.json index 63fe1155b..f13bd04cb 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_cyan.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_cyan.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_cyan" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_empty.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_empty.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_empty.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_empty.json index 0af5da8d8..7cc72054e 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_empty.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_empty.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_empty" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_gray.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_gray.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_gray.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_gray.json index 3d714297c..fb0e1e6eb 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_gray.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_gray.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_gray" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_green.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_green.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_green.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_green.json index 27f2c1f0b..b3281e641 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_green.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_green.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_green" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_blue.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_blue.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_blue.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_blue.json index a1efd6386..34e4bb105 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_blue.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_blue.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_light_blue" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_gray.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_gray.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_gray.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_gray.json index 8ea632a3c..03c32964c 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_light_gray.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_light_gray.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_light_gray" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_lime.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_lime.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_lime.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_lime.json index e4e2453bd..cacfb46fc 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_lime.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_lime.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_lime" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_magenta.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_magenta.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_magenta.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_magenta.json index 3aed50c50..09b319c39 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_magenta.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_magenta.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_magenta" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_orange.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_orange.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_orange.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_orange.json index 86fa1a5e1..2ab6a6cb0 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_orange.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_orange.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_orange" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_pink.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_pink.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_pink.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_pink.json index 4c3f05981..0ac6898e6 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_pink.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_pink.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_pink" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_psi.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_psi.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_psi.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_psi.json index 9e2e04f7d..3734af32e 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_psi.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_psi.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_psi" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_purple.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_purple.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_purple.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_purple.json index 90b017132..dc7fb5641 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_purple.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_purple.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_purple" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_rainbow.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_rainbow.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_rainbow.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_rainbow.json index c84fdac4e..a1e848eb6 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_rainbow.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_rainbow.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_rainbow" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_red.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_red.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_red.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_red.json index 3334ff437..443439156 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_red.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_red.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_red" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_white.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_white.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_white.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_white.json index 30b34e192..a98a2cf0c 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_white.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_white.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_white" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_yellow.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_yellow.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_yellow.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_yellow.json index 659580b5c..c31d7d6b7 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_colorizer_yellow.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_colorizer_yellow.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_colorizer_yellow" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_basic.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_basic.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_core_basic.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_core_basic.json index 77a2424ce..e2f5633fc 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_basic.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_basic.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_core_basic" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_conductive.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_conductive.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_core_conductive.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_core_conductive.json index 8ca0922da..7ab01c873 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_conductive.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_conductive.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_core_conductive" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_hyperclocked.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_hyperclocked.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_core_hyperclocked.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_core_hyperclocked.json index a43a08cab..d6c464398 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_hyperclocked.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_hyperclocked.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_core_hyperclocked" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_overclocked.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_overclocked.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_core_overclocked.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_core_overclocked.json index 4a8f13457..edea48545 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_overclocked.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_overclocked.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_core_overclocked" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_radiative.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_radiative.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_core_radiative.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_core_radiative.json index 0c7b59d98..97b5425f2 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_core_radiative.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_core_radiative.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_core_radiative" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_basic.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_basic.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_basic.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_basic.json index 25bb20660..dc5f2dd3a 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_basic.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_basic.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_socket_basic" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_huge.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_huge.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_huge.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_huge.json index ce8f99e8c..d58717242 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_huge.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_huge.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_socket_huge" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_large.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_large.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_large.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_large.json index eb8cd47d0..fa3389e05 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_large.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_large.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_socket_large" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_signaling.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_signaling.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_signaling.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_signaling.json index b0e915c29..740573cfd 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_signaling.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_signaling.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_socket_signaling" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_transmissive.json b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_transmissive.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_transmissive.json rename to src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_transmissive.json index 464f8c089..f28dfcf99 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/cad_socket_transmissive.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/cad_socket_transmissive.json @@ -28,5 +28,6 @@ "recipes": [ "psi:cad_socket_transmissive" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/detonator.json b/src/generated/resources/data/psi/advancements/recipes/tools/detonator.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/detonator.json rename to src/generated/resources/data/psi/advancements/recipes/tools/detonator.json index b038b0e3e..640a0932a 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/detonator.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/detonator.json @@ -28,5 +28,6 @@ "recipes": [ "psi:detonator" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_controller.json b/src/generated/resources/data/psi/advancements/recipes/tools/exosuit_controller.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/exosuit_controller.json rename to src/generated/resources/data/psi/advancements/recipes/tools/exosuit_controller.json index 47bd3a324..55462b90d 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/exosuit_controller.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/exosuit_controller.json @@ -28,5 +28,6 @@ "recipes": [ "psi:exosuit_controller" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_basic.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_basic.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_basic.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_basic.json index 82b187b27..429fc8504 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_basic.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_basic.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_basic" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge.json index 15718246b..dd684380e 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_charge" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge_upgrade.json index 7f1837f7e..21e5f92f7 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_charge_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_charge_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_charge_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle.json index 9c7ffc808..fe50fe3ed 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_circle" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle_upgrade.json index e05fec0b6..9e9d0cd35 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_circle_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_circle_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_circle_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade.json index 445fa0876..49d0d0657 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_grenade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade_upgrade.json index ac712504b..30f64c221 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_grenade_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_grenade_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_grenade_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast.json index 18ceae3f3..b30c8113a 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_loopcast" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast_upgrade.json index 85ecf06a8..1b8e0a0ff 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_loopcast_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_loopcast_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_loopcast_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine.json index ebc69fc4e..f6a7e4bff 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_mine" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine_upgrade.json index fe7bdb21f..c994dca42 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_mine_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_mine_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_mine_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile.json index e4abcba13..64c6831f2 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_bullet_projectile" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile_upgrade.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile_upgrade.json similarity index 94% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile_upgrade.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile_upgrade.json index 61e587bb5..3ff62db63 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_bullet_projectile_upgrade.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_bullet_projectile_upgrade.json @@ -30,5 +30,6 @@ "recipes": [ "psi:spell_bullet_projectile_upgrade" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/spell_drive.json b/src/generated/resources/data/psi/advancements/recipes/tools/spell_drive.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/spell_drive.json rename to src/generated/resources/data/psi/advancements/recipes/tools/spell_drive.json index 3f6abaf8c..26ee24265 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/spell_drive.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/spell_drive.json @@ -28,5 +28,6 @@ "recipes": [ "psi:spell_drive" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/advancements/recipes/psi/vector_ruler.json b/src/generated/resources/data/psi/advancements/recipes/tools/vector_ruler.json similarity index 93% rename from src/generated/resources/data/psi/advancements/recipes/psi/vector_ruler.json rename to src/generated/resources/data/psi/advancements/recipes/tools/vector_ruler.json index 1dd5f9f12..f5a84f459 100644 --- a/src/generated/resources/data/psi/advancements/recipes/psi/vector_ruler.json +++ b/src/generated/resources/data/psi/advancements/recipes/tools/vector_ruler.json @@ -28,5 +28,6 @@ "recipes": [ "psi:vector_ruler" ] - } + }, + "sends_telemetry_event": false } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/assembler.json b/src/generated/resources/data/psi/recipes/assembler.json index 39f58c347..c1873ba8e 100644 --- a/src/generated/resources/data/psi/recipes/assembler.json +++ b/src/generated/resources/data/psi/recipes/assembler.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/iron" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:cad_assembler" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_assembly_ebony.json b/src/generated/resources/data/psi/recipes/cad_assembly_ebony.json index 3ce009951..cfb96dc59 100644 --- a/src/generated/resources/data/psi/recipes/cad_assembly_ebony.json +++ b/src/generated/resources/data/psi/recipes/cad_assembly_ebony.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/ebony_psimetal" @@ -11,5 +12,6 @@ ], "result": { "item": "psi:cad_assembly_ebony_psimetal" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_assembly_gold.json b/src/generated/resources/data/psi/recipes/cad_assembly_gold.json index feed89f65..94c455dfd 100644 --- a/src/generated/resources/data/psi/recipes/cad_assembly_gold.json +++ b/src/generated/resources/data/psi/recipes/cad_assembly_gold.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/gold" @@ -11,5 +12,6 @@ ], "result": { "item": "psi:cad_assembly_gold" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_assembly_iron.json b/src/generated/resources/data/psi/recipes/cad_assembly_iron.json index 0e44024ce..df906f068 100644 --- a/src/generated/resources/data/psi/recipes/cad_assembly_iron.json +++ b/src/generated/resources/data/psi/recipes/cad_assembly_iron.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/iron" @@ -11,5 +12,6 @@ ], "result": { "item": "psi:cad_assembly_iron" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_assembly_ivory.json b/src/generated/resources/data/psi/recipes/cad_assembly_ivory.json index 3bec445d3..d75af6fa3 100644 --- a/src/generated/resources/data/psi/recipes/cad_assembly_ivory.json +++ b/src/generated/resources/data/psi/recipes/cad_assembly_ivory.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/ivory_psimetal" @@ -11,5 +12,6 @@ ], "result": { "item": "psi:cad_assembly_ivory_psimetal" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_assembly_psimetal.json b/src/generated/resources/data/psi/recipes/cad_assembly_psimetal.json index d572030b9..4f4f1d6a4 100644 --- a/src/generated/resources/data/psi/recipes/cad_assembly_psimetal.json +++ b/src/generated/resources/data/psi/recipes/cad_assembly_psimetal.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -11,5 +12,6 @@ ], "result": { "item": "psi:cad_assembly_psimetal" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_battery_basic.json b/src/generated/resources/data/psi/recipes/cad_battery_basic.json index ac93a7d0c..1b1df472e 100644 --- a/src/generated/resources/data/psi/recipes/cad_battery_basic.json +++ b/src/generated/resources/data/psi/recipes/cad_battery_basic.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_battery_basic" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_battery_extended.json b/src/generated/resources/data/psi/recipes/cad_battery_extended.json index 0ce2a0014..60ee57cc0 100644 --- a/src/generated/resources/data/psi/recipes/cad_battery_extended.json +++ b/src/generated/resources/data/psi/recipes/cad_battery_extended.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_battery_extended" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_battery_ultradense.json b/src/generated/resources/data/psi/recipes/cad_battery_ultradense.json index 072420ad6..65d473d4e 100644 --- a/src/generated/resources/data/psi/recipes/cad_battery_ultradense.json +++ b/src/generated/resources/data/psi/recipes/cad_battery_ultradense.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:gems/psigem" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_battery_ultradense" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_black.json b/src/generated/resources/data/psi/recipes/cad_colorizer_black.json index a1488b443..359ff2c71 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_black.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_black.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_black" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_blue.json b/src/generated/resources/data/psi/recipes/cad_colorizer_blue.json index f919952ce..c719b30bd 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_blue.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_blue.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_blue" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_brown.json b/src/generated/resources/data/psi/recipes/cad_colorizer_brown.json index 0ea3c656d..9b357e46e 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_brown.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_brown.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_brown" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_cyan.json b/src/generated/resources/data/psi/recipes/cad_colorizer_cyan.json index 8abe40279..99ea89b04 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_cyan.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_cyan.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_cyan" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_empty.json b/src/generated/resources/data/psi/recipes/cad_colorizer_empty.json index 60d8c0620..5ea55ae1d 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_empty.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_empty.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_colorizer_empty" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_gray.json b/src/generated/resources/data/psi/recipes/cad_colorizer_gray.json index 05fd7c860..fd9cfa1aa 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_gray.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_gray.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_gray" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_green.json b/src/generated/resources/data/psi/recipes/cad_colorizer_green.json index 409de6e40..784af61d9 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_green.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_green.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_green" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_light_blue.json b/src/generated/resources/data/psi/recipes/cad_colorizer_light_blue.json index 4fb87b8f5..c7d69f1d3 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_light_blue.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_light_blue.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_light_blue" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_light_gray.json b/src/generated/resources/data/psi/recipes/cad_colorizer_light_gray.json index 70cfaa200..c3cc8e55a 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_light_gray.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_light_gray.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_light_gray" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_lime.json b/src/generated/resources/data/psi/recipes/cad_colorizer_lime.json index bf724449c..b2fd68b49 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_lime.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_lime.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_lime" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_magenta.json b/src/generated/resources/data/psi/recipes/cad_colorizer_magenta.json index 23766973d..172a5cb74 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_magenta.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_magenta.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_magenta" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_orange.json b/src/generated/resources/data/psi/recipes/cad_colorizer_orange.json index f12f6834d..d735d5d85 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_orange.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_orange.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_orange" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_pink.json b/src/generated/resources/data/psi/recipes/cad_colorizer_pink.json index 57be2e0da..1e947be0b 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_pink.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_pink.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_pink" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_psi.json b/src/generated/resources/data/psi/recipes/cad_colorizer_psi.json index e72148dfe..21a7a7e80 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_psi.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_psi.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_psi" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_purple.json b/src/generated/resources/data/psi/recipes/cad_colorizer_purple.json index 800ae5410..87366ab86 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_purple.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_purple.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_purple" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_rainbow.json b/src/generated/resources/data/psi/recipes/cad_colorizer_rainbow.json index 8c0733adc..bee669857 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_rainbow.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_rainbow.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_rainbow" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_red.json b/src/generated/resources/data/psi/recipes/cad_colorizer_red.json index 2162359f5..18571319b 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_red.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_red.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_red" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_white.json b/src/generated/resources/data/psi/recipes/cad_colorizer_white.json index 478513702..ca80aca9b 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_white.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_white.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_white" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_colorizer_yellow.json b/src/generated/resources/data/psi/recipes/cad_colorizer_yellow.json index 4a406286c..57cfa00e0 100644 --- a/src/generated/resources/data/psi/recipes/cad_colorizer_yellow.json +++ b/src/generated/resources/data/psi/recipes/cad_colorizer_yellow.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "group": "psi:colorizer", "key": { "C": { @@ -22,5 +23,6 @@ ], "result": { "item": "psi:cad_colorizer_yellow" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_core_basic.json b/src/generated/resources/data/psi/recipes/cad_core_basic.json index 885557a4a..aeedb69d1 100644 --- a/src/generated/resources/data/psi/recipes/cad_core_basic.json +++ b/src/generated/resources/data/psi/recipes/cad_core_basic.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:cad_core_basic" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_core_conductive.json b/src/generated/resources/data/psi/recipes/cad_core_conductive.json index 3041e9642..b507afbe2 100644 --- a/src/generated/resources/data/psi/recipes/cad_core_conductive.json +++ b/src/generated/resources/data/psi/recipes/cad_core_conductive.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/glowstone" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:cad_core_conductive" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_core_hyperclocked.json b/src/generated/resources/data/psi/recipes/cad_core_hyperclocked.json index fc123acdb..4338beb4e 100644 --- a/src/generated/resources/data/psi/recipes/cad_core_hyperclocked.json +++ b/src/generated/resources/data/psi/recipes/cad_core_hyperclocked.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/redstone" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_core_hyperclocked" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_core_overclocked.json b/src/generated/resources/data/psi/recipes/cad_core_overclocked.json index a671e612c..f74f456e2 100644 --- a/src/generated/resources/data/psi/recipes/cad_core_overclocked.json +++ b/src/generated/resources/data/psi/recipes/cad_core_overclocked.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/redstone" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:cad_core_overclocked" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_core_radiative.json b/src/generated/resources/data/psi/recipes/cad_core_radiative.json index fab8d7047..f2af9413d 100644 --- a/src/generated/resources/data/psi/recipes/cad_core_radiative.json +++ b/src/generated/resources/data/psi/recipes/cad_core_radiative.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/glowstone" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:cad_core_radiative" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_socket_basic.json b/src/generated/resources/data/psi/recipes/cad_socket_basic.json index 2853e69c8..5cb5f82dc 100644 --- a/src/generated/resources/data/psi/recipes/cad_socket_basic.json +++ b/src/generated/resources/data/psi/recipes/cad_socket_basic.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -14,5 +15,6 @@ ], "result": { "item": "psi:cad_socket_basic" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_socket_huge.json b/src/generated/resources/data/psi/recipes/cad_socket_huge.json index a341470d1..a8c836bf7 100644 --- a/src/generated/resources/data/psi/recipes/cad_socket_huge.json +++ b/src/generated/resources/data/psi/recipes/cad_socket_huge.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/glowstone" @@ -17,5 +18,6 @@ ], "result": { "item": "psi:cad_socket_huge" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_socket_large.json b/src/generated/resources/data/psi/recipes/cad_socket_large.json index 2c98b7bbc..120c917ba 100644 --- a/src/generated/resources/data/psi/recipes/cad_socket_large.json +++ b/src/generated/resources/data/psi/recipes/cad_socket_large.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/glowstone" @@ -14,5 +15,6 @@ ], "result": { "item": "psi:cad_socket_large" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_socket_signaling.json b/src/generated/resources/data/psi/recipes/cad_socket_signaling.json index 45ebb2c44..b0d478a1e 100644 --- a/src/generated/resources/data/psi/recipes/cad_socket_signaling.json +++ b/src/generated/resources/data/psi/recipes/cad_socket_signaling.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/redstone" @@ -14,5 +15,6 @@ ], "result": { "item": "psi:cad_socket_signaling" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/cad_socket_transmissive.json b/src/generated/resources/data/psi/recipes/cad_socket_transmissive.json index 5e9d17996..676626af0 100644 --- a/src/generated/resources/data/psi/recipes/cad_socket_transmissive.json +++ b/src/generated/resources/data/psi/recipes/cad_socket_transmissive.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "forge:dusts/redstone" @@ -17,5 +18,6 @@ ], "result": { "item": "psi:cad_socket_transmissive" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/detonator.json b/src/generated/resources/data/psi/recipes/detonator.json index cb92ad234..d695c5d75 100644 --- a/src/generated/resources/data/psi/recipes/detonator.json +++ b/src/generated/resources/data/psi/recipes/detonator.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "B": { "tag": "minecraft:buttons" @@ -17,5 +18,6 @@ ], "result": { "item": "psi:detonator" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/bullet_to_drive.json b/src/generated/resources/data/psi/recipes/dynamic/bullet_to_drive.json index d204a8e7f..9aeb565e6 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/bullet_to_drive.json +++ b/src/generated/resources/data/psi/recipes/dynamic/bullet_to_drive.json @@ -1,3 +1,4 @@ { - "type": "psi:bullet_to_drive" + "type": "psi:bullet_to_drive", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/colorizer_change.json b/src/generated/resources/data/psi/recipes/dynamic/colorizer_change.json index e8a2996fc..39d7aa40f 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/colorizer_change.json +++ b/src/generated/resources/data/psi/recipes/dynamic/colorizer_change.json @@ -1,3 +1,4 @@ { - "type": "psi:colorizer_change" + "type": "psi:colorizer_change", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/drive_duplicate.json b/src/generated/resources/data/psi/recipes/dynamic/drive_duplicate.json index b68330d15..8f9db6e77 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/drive_duplicate.json +++ b/src/generated/resources/data/psi/recipes/dynamic/drive_duplicate.json @@ -1,3 +1,4 @@ { - "type": "psi:drive_duplicate" + "type": "psi:drive_duplicate", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/scavenge.json b/src/generated/resources/data/psi/recipes/dynamic/scavenge.json index d05b9c46c..7a21e4e4c 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/scavenge.json +++ b/src/generated/resources/data/psi/recipes/dynamic/scavenge.json @@ -1,3 +1,4 @@ { - "type": "psi:scavenge" + "type": "psi:scavenge", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/sensor_attach.json b/src/generated/resources/data/psi/recipes/dynamic/sensor_attach.json index 13a04ea68..ef678b6bd 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/sensor_attach.json +++ b/src/generated/resources/data/psi/recipes/dynamic/sensor_attach.json @@ -1,3 +1,4 @@ { - "type": "psi:sensor_attach" + "type": "psi:sensor_attach", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/dynamic/sensor_remove.json b/src/generated/resources/data/psi/recipes/dynamic/sensor_remove.json index 13538bc20..10ac73f04 100644 --- a/src/generated/resources/data/psi/recipes/dynamic/sensor_remove.json +++ b/src/generated/resources/data/psi/recipes/dynamic/sensor_remove.json @@ -1,3 +1,4 @@ { - "type": "psi:sensor_remove" + "type": "psi:sensor_remove", + "category": "misc" } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/ebony_block.json b/src/generated/resources/data/psi/recipes/ebony_block.json index c373d7fce..d52d7331d 100644 --- a/src/generated/resources/data/psi/recipes/ebony_block.json +++ b/src/generated/resources/data/psi/recipes/ebony_block.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "building", "key": { "I": { "item": "psi:ebony_psimetal" @@ -12,5 +13,6 @@ ], "result": { "item": "psi:ebony_psimetal_block" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/ebony_ingot_shapeless.json b/src/generated/resources/data/psi/recipes/ebony_ingot_shapeless.json index b3e042dc3..a1f83d639 100644 --- a/src/generated/resources/data/psi/recipes/ebony_ingot_shapeless.json +++ b/src/generated/resources/data/psi/recipes/ebony_ingot_shapeless.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "building", "ingredients": [ { "item": "psi:ebony_psimetal_block" diff --git a/src/generated/resources/data/psi/recipes/ebony_psimetal.json b/src/generated/resources/data/psi/recipes/ebony_psimetal.json index 43d4d2135..ec7411b38 100644 --- a/src/generated/resources/data/psi/recipes/ebony_psimetal.json +++ b/src/generated/resources/data/psi/recipes/ebony_psimetal.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:ebony_psimetal" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_controller.json b/src/generated/resources/data/psi/recipes/exosuit_controller.json index e43b4cbbb..d4b999ec4 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_controller.json +++ b/src/generated/resources/data/psi/recipes/exosuit_controller.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:glass" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_controller" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_sensor_heat.json b/src/generated/resources/data/psi/recipes/exosuit_sensor_heat.json index f959f19e2..2f4c0f1b2 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_sensor_heat.json +++ b/src/generated/resources/data/psi/recipes/exosuit_sensor_heat.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_sensor_heat" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_sensor_light.json b/src/generated/resources/data/psi/recipes/exosuit_sensor_light.json index 3824416bf..1cb0129d8 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_sensor_light.json +++ b/src/generated/resources/data/psi/recipes/exosuit_sensor_light.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_sensor_light" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_sensor_stress.json b/src/generated/resources/data/psi/recipes/exosuit_sensor_stress.json index cfc1aaa60..5d1a94ebd 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_sensor_stress.json +++ b/src/generated/resources/data/psi/recipes/exosuit_sensor_stress.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_sensor_stress" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_sensor_trigger.json b/src/generated/resources/data/psi/recipes/exosuit_sensor_trigger.json index 35ee2c37f..8a159ccd6 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_sensor_trigger.json +++ b/src/generated/resources/data/psi/recipes/exosuit_sensor_trigger.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_sensor_trigger" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/exosuit_sensor_water.json b/src/generated/resources/data/psi/recipes/exosuit_sensor_water.json index 282b94d7b..d8008fc47 100644 --- a/src/generated/resources/data/psi/recipes/exosuit_sensor_water.json +++ b/src/generated/resources/data/psi/recipes/exosuit_sensor_water.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:exosuit_sensor_water" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/ivory_block.json b/src/generated/resources/data/psi/recipes/ivory_block.json index fab18d4e7..0861193f9 100644 --- a/src/generated/resources/data/psi/recipes/ivory_block.json +++ b/src/generated/resources/data/psi/recipes/ivory_block.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "building", "key": { "I": { "item": "psi:ivory_psimetal" @@ -12,5 +13,6 @@ ], "result": { "item": "psi:ivory_psimetal_block" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/ivory_ingot_shapeless.json b/src/generated/resources/data/psi/recipes/ivory_ingot_shapeless.json index c61d27c6a..595f179ee 100644 --- a/src/generated/resources/data/psi/recipes/ivory_ingot_shapeless.json +++ b/src/generated/resources/data/psi/recipes/ivory_ingot_shapeless.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "building", "ingredients": [ { "item": "psi:ivory_psimetal_block" diff --git a/src/generated/resources/data/psi/recipes/ivory_psimetal.json b/src/generated/resources/data/psi/recipes/ivory_psimetal.json index 2096d0b13..45dab62db 100644 --- a/src/generated/resources/data/psi/recipes/ivory_psimetal.json +++ b/src/generated/resources/data/psi/recipes/ivory_psimetal.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:ivory_psimetal" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/programmer.json b/src/generated/resources/data/psi/recipes/programmer.json index 95b6dbf32..6ce603004 100644 --- a/src/generated/resources/data/psi/recipes/programmer.json +++ b/src/generated/resources/data/psi/recipes/programmer.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "D": { "tag": "psi:psidust" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:programmer" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psidust_block.json b/src/generated/resources/data/psi/recipes/psidust_block.json index 56424edfe..650498367 100644 --- a/src/generated/resources/data/psi/recipes/psidust_block.json +++ b/src/generated/resources/data/psi/recipes/psidust_block.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "building", "key": { "I": { "item": "psi:psidust" @@ -12,5 +13,6 @@ ], "result": { "item": "psi:psidust_block" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psidust_shapeless.json b/src/generated/resources/data/psi/recipes/psidust_shapeless.json index 63d53dfc5..65d0e61b6 100644 --- a/src/generated/resources/data/psi/recipes/psidust_shapeless.json +++ b/src/generated/resources/data/psi/recipes/psidust_shapeless.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "building", "ingredients": [ { "item": "psi:psidust_block" diff --git a/src/generated/resources/data/psi/recipes/psigem_block.json b/src/generated/resources/data/psi/recipes/psigem_block.json index 079977ba3..aeb37755d 100644 --- a/src/generated/resources/data/psi/recipes/psigem_block.json +++ b/src/generated/resources/data/psi/recipes/psigem_block.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "building", "key": { "I": { "item": "psi:psigem" @@ -12,5 +13,6 @@ ], "result": { "item": "psi:psigem_block" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psigem_shapeless.json b/src/generated/resources/data/psi/recipes/psigem_shapeless.json index 82385763b..e00c6422d 100644 --- a/src/generated/resources/data/psi/recipes/psigem_shapeless.json +++ b/src/generated/resources/data/psi/recipes/psigem_shapeless.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "building", "ingredients": [ { "item": "psi:psigem_block" diff --git a/src/generated/resources/data/psi/recipes/psimetal_axe.json b/src/generated/resources/data/psi/recipes/psimetal_axe.json index 45359d20c..c2ad5bffa 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_axe.json +++ b/src/generated/resources/data/psi/recipes/psimetal_axe.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:psimetal_axe" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_block.json b/src/generated/resources/data/psi/recipes/psimetal_block.json index 8bccc7701..90376ba6c 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_block.json +++ b/src/generated/resources/data/psi/recipes/psimetal_block.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "building", "key": { "I": { "item": "psi:psimetal" @@ -12,5 +13,6 @@ ], "result": { "item": "psi:psimetal_block" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_exosuit_boots.json b/src/generated/resources/data/psi/recipes/psimetal_exosuit_boots.json index 67e9938e2..e4a2d852e 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_exosuit_boots.json +++ b/src/generated/resources/data/psi/recipes/psimetal_exosuit_boots.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -14,5 +15,6 @@ ], "result": { "item": "psi:psimetal_exosuit_boots" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_exosuit_chestplate.json b/src/generated/resources/data/psi/recipes/psimetal_exosuit_chestplate.json index 971895b54..5858d157e 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_exosuit_chestplate.json +++ b/src/generated/resources/data/psi/recipes/psimetal_exosuit_chestplate.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:psimetal_exosuit_chestplate" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_exosuit_helmet.json b/src/generated/resources/data/psi/recipes/psimetal_exosuit_helmet.json index 15dd8aed9..a117ed7a6 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_exosuit_helmet.json +++ b/src/generated/resources/data/psi/recipes/psimetal_exosuit_helmet.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -14,5 +15,6 @@ ], "result": { "item": "psi:psimetal_exosuit_helmet" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_exosuit_leggings.json b/src/generated/resources/data/psi/recipes/psimetal_exosuit_leggings.json index 9c2a7fca2..6dd6d78f9 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_exosuit_leggings.json +++ b/src/generated/resources/data/psi/recipes/psimetal_exosuit_leggings.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:psimetal_exosuit_leggings" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_pickaxe.json b/src/generated/resources/data/psi/recipes/psimetal_pickaxe.json index fee62972b..ef6559fb2 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_pickaxe.json +++ b/src/generated/resources/data/psi/recipes/psimetal_pickaxe.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:psimetal_pickaxe" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_plate_black.json b/src/generated/resources/data/psi/recipes/psimetal_plate_black.json index 786008075..b3c6cabb4 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_plate_black.json +++ b/src/generated/resources/data/psi/recipes/psimetal_plate_black.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "C": { "tag": "minecraft:coals" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:black_psimetal_plate" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_plate_black_light.json b/src/generated/resources/data/psi/recipes/psimetal_plate_black_light.json index c58730ffb..741fb7138 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_plate_black_light.json +++ b/src/generated/resources/data/psi/recipes/psimetal_plate_black_light.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "misc", "ingredients": [ { "tag": "forge:dusts/glowstone" diff --git a/src/generated/resources/data/psi/recipes/psimetal_plate_white.json b/src/generated/resources/data/psi/recipes/psimetal_plate_white.json index ae540e12c..c51db8494 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_plate_white.json +++ b/src/generated/resources/data/psi/recipes/psimetal_plate_white.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "misc", "key": { "C": { "tag": "forge:gems/quartz" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:white_psimetal_plate" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_plate_white_light.json b/src/generated/resources/data/psi/recipes/psimetal_plate_white_light.json index 157372232..63332c2f6 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_plate_white_light.json +++ b/src/generated/resources/data/psi/recipes/psimetal_plate_white_light.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "misc", "ingredients": [ { "tag": "forge:dusts/glowstone" diff --git a/src/generated/resources/data/psi/recipes/psimetal_shapeless.json b/src/generated/resources/data/psi/recipes/psimetal_shapeless.json index 41259288c..b0c62834d 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_shapeless.json +++ b/src/generated/resources/data/psi/recipes/psimetal_shapeless.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shapeless", + "category": "building", "ingredients": [ { "item": "psi:psimetal_block" diff --git a/src/generated/resources/data/psi/recipes/psimetal_shovel.json b/src/generated/resources/data/psi/recipes/psimetal_shovel.json index 657447807..31110a5ea 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_shovel.json +++ b/src/generated/resources/data/psi/recipes/psimetal_shovel.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:psimetal_shovel" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/psimetal_sword.json b/src/generated/resources/data/psi/recipes/psimetal_sword.json index b5d4856c1..d9d79ecd5 100644 --- a/src/generated/resources/data/psi/recipes/psimetal_sword.json +++ b/src/generated/resources/data/psi/recipes/psimetal_sword.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "G": { "tag": "forge:gems/psigem" @@ -18,5 +19,6 @@ ], "result": { "item": "psi:psimetal_sword" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_basic.json b/src/generated/resources/data/psi/recipes/spell_bullet_basic.json index c0a0a6f3c..b58dcb707 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_basic.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_basic.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -13,5 +14,6 @@ ], "result": { "item": "psi:spell_bullet" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_charge.json b/src/generated/resources/data/psi/recipes/spell_bullet_charge.json index dcb7e2e44..91a2df647 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_charge.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_charge.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": { "tag": "forge:dusts/redstone" @@ -16,5 +17,6 @@ ], "result": { "item": "psi:spell_bullet_charge" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_charge_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_charge_upgrade.json index ac9e4dd88..4ae8c8bdb 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_charge_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_charge_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_circle.json b/src/generated/resources/data/psi/recipes/spell_bullet_circle.json index e3c98529b..49304eb1e 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_circle.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_circle.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": [ { @@ -21,5 +22,6 @@ ], "result": { "item": "psi:spell_bullet_circle" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_circle_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_circle_upgrade.json index 612c6eac3..8152cd232 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_circle_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_circle_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_grenade.json b/src/generated/resources/data/psi/recipes/spell_bullet_grenade.json index 83f170004..f07ae433d 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_grenade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_grenade.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": { "tag": "forge:gunpowder" @@ -16,5 +17,6 @@ ], "result": { "item": "psi:spell_bullet_grenade" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_grenade_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_grenade_upgrade.json index dffe05684..c6e2e74e0 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_grenade_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_grenade_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_loopcast.json b/src/generated/resources/data/psi/recipes/spell_bullet_loopcast.json index 30caf9a0b..2d78efa44 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_loopcast.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_loopcast.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": { "tag": "forge:string" @@ -16,5 +17,6 @@ ], "result": { "item": "psi:spell_bullet_loop" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_loopcast_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_loopcast_upgrade.json index 089552e91..081c5ca6a 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_loopcast_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_loopcast_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_mine.json b/src/generated/resources/data/psi/recipes/spell_bullet_mine.json index 673a20319..a7bb75405 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_mine.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_mine.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": { "tag": "minecraft:buttons" @@ -16,5 +17,6 @@ ], "result": { "item": "psi:spell_bullet_mine" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_mine_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_mine_upgrade.json index 2e241b8bf..50ddacb22 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_mine_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_mine_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_projectile.json b/src/generated/resources/data/psi/recipes/spell_bullet_projectile.json index c5c7425a6..c2d1f453d 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_projectile.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_projectile.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "A": { "tag": "minecraft:arrows" @@ -16,5 +17,6 @@ ], "result": { "item": "psi:spell_bullet_projectile" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/spell_bullet_projectile_upgrade.json b/src/generated/resources/data/psi/recipes/spell_bullet_projectile_upgrade.json index 37601f095..761beac71 100644 --- a/src/generated/resources/data/psi/recipes/spell_bullet_projectile_upgrade.json +++ b/src/generated/resources/data/psi/recipes/spell_bullet_projectile_upgrade.json @@ -1,5 +1,6 @@ { "type": "psi:bullet_upgrade", + "category": "equipment", "ingredients": [ { "item": "psi:spell_bullet" diff --git a/src/generated/resources/data/psi/recipes/spell_drive.json b/src/generated/resources/data/psi/recipes/spell_drive.json index 6d8b0d8c5..d877d372d 100644 --- a/src/generated/resources/data/psi/recipes/spell_drive.json +++ b/src/generated/resources/data/psi/recipes/spell_drive.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "I": { "tag": "forge:ingots/psimetal" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:spell_drive" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/generated/resources/data/psi/recipes/vector_ruler.json b/src/generated/resources/data/psi/recipes/vector_ruler.json index ee11183eb..e44e9bac4 100644 --- a/src/generated/resources/data/psi/recipes/vector_ruler.json +++ b/src/generated/resources/data/psi/recipes/vector_ruler.json @@ -1,5 +1,6 @@ { "type": "minecraft:crafting_shaped", + "category": "equipment", "key": { "D": { "tag": "psi:psidust" @@ -15,5 +16,6 @@ ], "result": { "item": "psi:vector_ruler" - } + }, + "show_notification": true } \ No newline at end of file diff --git a/src/main/java/vazkii/psi/common/core/handler/DamageTypeHandler.java b/src/main/java/vazkii/psi/common/core/handler/DamageTypeHandler.java index 34bf3f7f9..27bc70f54 100644 --- a/src/main/java/vazkii/psi/common/core/handler/DamageTypeHandler.java +++ b/src/main/java/vazkii/psi/common/core/handler/DamageTypeHandler.java @@ -24,7 +24,7 @@ public class DamageTypeHandler { @SubscribeEvent public static void registerSerializers(RegisterEvent event) { event.register(Registries.DAMAGE_TYPE, helper -> { - helper.register(LibResources.PSI_DAMAGE_TYPE, psiDamageType); + helper.register(LibResources.PSI_OVERLOAD, psiDamageType); }); } } diff --git a/src/main/java/vazkii/psi/common/core/handler/PlayerDataHandler.java b/src/main/java/vazkii/psi/common/core/handler/PlayerDataHandler.java index 416a7085a..2e30f3cec 100644 --- a/src/main/java/vazkii/psi/common/core/handler/PlayerDataHandler.java +++ b/src/main/java/vazkii/psi/common/core/handler/PlayerDataHandler.java @@ -690,7 +690,7 @@ public void deductPsi(int psi, int cd, boolean sync, boolean shatter) { if(!shatter && overflow > 0) { float dmg = (float) overflow / (loopcasting ? 50 : 125); if(!client) { - Holder holder = RegistryManager.VANILLA.getRegistry(Registries.DAMAGE_TYPE).getHolder(LibResources.PSI_DAMAGE_TYPE).get(); + Holder holder = RegistryManager.VANILLA.getRegistry(Registries.DAMAGE_TYPE).getHolder(LibResources.PSI_OVERLOAD).get(); DamageSource overloadSource = new DamageSource(holder); player.hurt(overloadSource, dmg); } diff --git a/src/main/java/vazkii/psi/common/lib/LibResources.java b/src/main/java/vazkii/psi/common/lib/LibResources.java index ebeaa620d..ea4602359 100644 --- a/src/main/java/vazkii/psi/common/lib/LibResources.java +++ b/src/main/java/vazkii/psi/common/lib/LibResources.java @@ -8,14 +8,17 @@ */ package vazkii.psi.common.lib; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.damagesource.DamageType; public class LibResources { public static final String PREFIX_MOD = "psi:"; public static final ResourceLocation PATCHOULI_BOOK = new ResourceLocation(LibMisc.MOD_ID, "encyclopaedia_psionica"); - public static final ResourceLocation PSI_DAMAGE_TYPE = new ResourceLocation(LibMisc.MOD_ID, "psi_overload"); + public static final ResourceKey PSI_OVERLOAD = ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation(LibMisc.MOD_ID, "psi_overload")); public static final String PREFIX_GUI = PREFIX_MOD + "textures/gui/"; public static final String PREFIX_MODEL = PREFIX_MOD + "textures/model/"; diff --git a/src/main/java/vazkii/psi/common/lib/ModTags.java b/src/main/java/vazkii/psi/common/lib/ModTags.java index b85be6942..612f326ca 100644 --- a/src/main/java/vazkii/psi/common/lib/ModTags.java +++ b/src/main/java/vazkii/psi/common/lib/ModTags.java @@ -33,12 +33,6 @@ public class ModTags { public static final TagKey INGOT_IVORY_PSIMETAL = forgeTag("ingots/ivory_psimetal"); public static final TagKey BLOCK_IVORY_PSIMETAL = forgeTag("storage_blocks/ivory_psimetal"); - public static final TagKey PSI_OVERLOAD = damageTag(LibResources.PSI_DAMAGE_TYPE); - - private static TagKey damageTag(ResourceLocation rl) { - return TagKey.create(Registries.DAMAGE_TYPE, rl); - } - private static TagKey tag(String name) { return TagKey.create(Registries.ITEM, prefix(name)); } diff --git a/src/main/java/vazkii/psi/data/DataGenerator.java b/src/main/java/vazkii/psi/data/DataGenerator.java index 755915515..1700b044a 100644 --- a/src/main/java/vazkii/psi/data/DataGenerator.java +++ b/src/main/java/vazkii/psi/data/DataGenerator.java @@ -28,7 +28,6 @@ public static void gatherData(GatherDataEvent event) { event.getGenerator().addProvider(true, new PsiDamageTypeTagsProvider(event.getGenerator().getPackOutput(), event.getLookupProvider(), existingFileHelper)); event.getGenerator().addProvider(true, new PsiItemTagProvider(event.getGenerator().getPackOutput(), event.getLookupProvider(), blockTagProvider.contentsGetter(), existingFileHelper)); event.getGenerator().addProvider(true, new PsiRecipeGenerator(event.getGenerator().getPackOutput())); - event.getGenerator().addProvider(true, new PsiTrickRecipeGenerator(event.getGenerator().getPackOutput())); } if(event.includeClient()) { diff --git a/src/main/java/vazkii/psi/data/PsiBlockModelGenerator.java b/src/main/java/vazkii/psi/data/PsiBlockModelGenerator.java index 782a61287..48ced0630 100644 --- a/src/main/java/vazkii/psi/data/PsiBlockModelGenerator.java +++ b/src/main/java/vazkii/psi/data/PsiBlockModelGenerator.java @@ -27,18 +27,18 @@ public PsiBlockModelGenerator(PackOutput output, ExistingFileHelper exFileHelper @Override protected void registerStatesAndModels() { - simpleBlock(ModBlocks.psidustBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psidustBlock).getPath(), location("blocks/psidust_block"))); - simpleBlock(ModBlocks.psimetalBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalBlock).getPath(), location("blocks/psimetal_block"))); - simpleBlock(ModBlocks.psigemBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psigemBlock).getPath(), location("blocks/psigem_block"))); - simpleBlock(ModBlocks.psimetalPlateBlack, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateBlack).getPath(), location("blocks/psimetal_plate_black"))); - simpleBlock(ModBlocks.psimetalPlateWhite, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateWhite).getPath(), location("blocks/psimetal_plate_white"))); + simpleBlock(ModBlocks.psidustBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psidustBlock).getPath(), location("block/psidust_block"))); + simpleBlock(ModBlocks.psimetalBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalBlock).getPath(), location("block/psimetal_block"))); + simpleBlock(ModBlocks.psigemBlock, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psigemBlock).getPath(), location("block/psigem_block"))); + simpleBlock(ModBlocks.psimetalPlateBlack, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateBlack).getPath(), location("block/psimetal_plate_black"))); + simpleBlock(ModBlocks.psimetalPlateWhite, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateWhite).getPath(), location("block/psimetal_plate_white"))); simpleBlock(ModBlocks.psimetalPlateBlackLight, models().cubeBottomTop(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateBlackLight).getPath(), - location("blocks/psimetal_plate_black_light"), location("blocks/psimetal_plate_black"), location("blocks/psimetal_plate_black"))); + location("block/psimetal_plate_black_light"), location("block/psimetal_plate_black"), location("block/psimetal_plate_black"))); simpleBlock(ModBlocks.psimetalPlateWhiteLight, models().cubeBottomTop(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalPlateWhiteLight).getPath(), - location("blocks/psimetal_plate_white_light"), location("blocks/psimetal_plate_white"), location("blocks/psimetal_plate_white"))); - simpleBlock(ModBlocks.psimetalEbony, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalEbony).getPath(), location("blocks/ebony_psimetal_block"))); - simpleBlock(ModBlocks.psimetalIvory, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalIvory).getPath(), location("blocks/ivory_psimetal_block"))); - simpleBlock(ModBlocks.conjured, models().withExistingParent(ForgeRegistries.BLOCKS.getKey(ModBlocks.conjured).getPath(), "block/block").texture("particle", location("blocks/empty"))); + location("block/psimetal_plate_white_light"), location("block/psimetal_plate_white"), location("block/psimetal_plate_white"))); + simpleBlock(ModBlocks.psimetalEbony, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalEbony).getPath(), location("block/ebony_psimetal_block"))); + simpleBlock(ModBlocks.psimetalIvory, models().cubeAll(ForgeRegistries.BLOCKS.getKey(ModBlocks.psimetalIvory).getPath(), location("block/ivory_psimetal_block"))); + simpleBlock(ModBlocks.conjured, models().withExistingParent(ForgeRegistries.BLOCKS.getKey(ModBlocks.conjured).getPath(), "block/block").texture("particle", location("block/empty"))); } @Nonnull diff --git a/src/main/java/vazkii/psi/data/PsiDamageTypeTagsProvider.java b/src/main/java/vazkii/psi/data/PsiDamageTypeTagsProvider.java index 6728e0d58..071c2659d 100644 --- a/src/main/java/vazkii/psi/data/PsiDamageTypeTagsProvider.java +++ b/src/main/java/vazkii/psi/data/PsiDamageTypeTagsProvider.java @@ -7,6 +7,7 @@ import net.minecraftforge.common.data.ExistingFileHelper; import vazkii.psi.common.lib.LibMisc; +import vazkii.psi.common.lib.LibResources; import vazkii.psi.common.lib.ModTags; import java.util.concurrent.CompletableFuture; @@ -19,11 +20,11 @@ public PsiDamageTypeTagsProvider(PackOutput pOutput, CompletableFuture consumer) { .requires(ModBlocks.psimetalPlateWhite.asItem()) .unlockedBy("has_psimetal", hasPsimetal) .save(consumer, Psi.location("psimetal_plate_white_light")); + this.buildTrickRecipes(consumer); + } + + protected void buildTrickRecipes(Consumer consumer) { + TrickRecipeBuilder.of(ModItems.psidust).input(Tags.Items.DUSTS_REDSTONE).cad(ModItems.cadAssemblyIron).build(consumer); + TrickRecipeBuilder.of(PatchouliAPI.get().getBookStack(LibResources.PATCHOULI_BOOK)).input(Items.BOOK).cad(ModItems.cadAssemblyIron).build(consumer); + + TrickRecipeBuilder.of(ModItems.cadAssemblyPsimetal) + .input(ModItems.cadAssemblyGold) + .trick(Psi.location(LibPieceNames.TRICK_INFUSION)) + .cad(ModItems.cadAssemblyIron) + .build(consumer, Psi.location("gold_to_psimetal_assembly_upgrade")); + + TrickRecipeBuilder.of(ModItems.psimetal) + .input(Tags.Items.INGOTS_GOLD) + .trick(Psi.location(LibPieceNames.TRICK_INFUSION)) + .cad(ModItems.cadAssemblyIron).build(consumer); + + TrickRecipeBuilder.of(ModItems.psigem) + .input(Tags.Items.GEMS_DIAMOND) + .trick(Psi.location(LibPieceNames.TRICK_GREATER_INFUSION)) + .cad(ModItems.cadAssemblyPsimetal).build(consumer); + + TrickRecipeBuilder builder = TrickRecipeBuilder.of(ModItems.ebonySubstance) + .input(ItemTags.COALS) + .trick(Psi.location(LibPieceNames.TRICK_EBONY_IVORY)) + .cad(ModItems.cadAssemblyPsimetal); + dimension(builder, consumer, ForgeRegistries.ITEMS.getKey(ModItems.ebonySubstance), Level.END); + + builder = TrickRecipeBuilder.of(ModItems.ivorySubstance) + .input(Tags.Items.GEMS_QUARTZ) + .trick(Psi.location(LibPieceNames.TRICK_EBONY_IVORY)) + .cad(ModItems.cadAssemblyPsimetal); + dimension(builder, consumer, ForgeRegistries.ITEMS.getKey(ModItems.ivorySubstance), Level.END); } private static void specialRecipe(SimpleCraftingRecipeSerializer serializer, Consumer consumer) { SpecialRecipeBuilder.special(serializer).save(consumer, Psi.location("dynamic/" + ForgeRegistries.RECIPE_SERIALIZERS.getKey(serializer).getPath()).toString()); } + public static void dimension(TrickRecipeBuilder builder, Consumer parent, + ResourceLocation id, ResourceKey dimensionKey) { + parent.accept(new DimensionResult(id, builder, dimensionKey)); + } + + public static class DimensionResult extends TrickRecipeBuilder.Result { + private final ResourceKey dimensionId; + + protected DimensionResult(ResourceLocation id, TrickRecipeBuilder builder, ResourceKey type) { + super(id, builder); + this.dimensionId = type; + } + + @Override + public void serializeRecipeData(@Nonnull JsonObject json) { + super.serializeRecipeData(json); + json.addProperty("dimension", dimensionId.location().toString()); + } + + @Nonnull + @Override + public RecipeSerializer getType() { + return DimensionTrickRecipe.SERIALIZER; + } + } } diff --git a/src/main/java/vazkii/psi/data/PsiTrickRecipeGenerator.java b/src/main/java/vazkii/psi/data/PsiTrickRecipeGenerator.java deleted file mode 100644 index 2d47f99b7..000000000 --- a/src/main/java/vazkii/psi/data/PsiTrickRecipeGenerator.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * This class is distributed as part of the Psi Mod. - * Get the Source Code in github: - * https://github.com/Vazkii/Psi - * - * Psi is Open Source and distributed under the - * Psi License: https://psi.vazkii.net/license.php - */ -package vazkii.psi.data; - -import com.google.gson.JsonObject; - -import net.minecraft.data.PackOutput; -import net.minecraft.data.recipes.FinishedRecipe; -import net.minecraft.data.recipes.RecipeProvider; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.tags.ItemTags; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.RecipeSerializer; -import net.minecraft.world.level.Level; -import net.minecraftforge.common.Tags; -import net.minecraftforge.registries.ForgeRegistries; - -import vazkii.patchouli.api.PatchouliAPI; -import vazkii.psi.api.recipe.TrickRecipeBuilder; -import vazkii.psi.common.Psi; -import vazkii.psi.common.crafting.recipe.DimensionTrickRecipe; -import vazkii.psi.common.item.base.ModItems; -import vazkii.psi.common.lib.LibPieceNames; -import vazkii.psi.common.lib.LibResources; - -import javax.annotation.Nonnull; - -import java.util.function.Consumer; - -public class PsiTrickRecipeGenerator extends RecipeProvider { - public PsiTrickRecipeGenerator(PackOutput output) { - super(output); - } - - @Override - protected void buildRecipes(Consumer consumer) { - TrickRecipeBuilder.of(ModItems.psidust).input(Tags.Items.DUSTS_REDSTONE).cad(ModItems.cadAssemblyIron).build(consumer); - TrickRecipeBuilder.of(PatchouliAPI.get().getBookStack(LibResources.PATCHOULI_BOOK)).input(Items.BOOK).cad(ModItems.cadAssemblyIron).build(consumer); - - TrickRecipeBuilder.of(ModItems.cadAssemblyPsimetal) - .input(ModItems.cadAssemblyGold) - .trick(Psi.location(LibPieceNames.TRICK_INFUSION)) - .cad(ModItems.cadAssemblyIron) - .build(consumer, Psi.location("gold_to_psimetal_assembly_upgrade")); - - TrickRecipeBuilder.of(ModItems.psimetal) - .input(Tags.Items.INGOTS_GOLD) - .trick(Psi.location(LibPieceNames.TRICK_INFUSION)) - .cad(ModItems.cadAssemblyIron).build(consumer); - - TrickRecipeBuilder.of(ModItems.psigem) - .input(Tags.Items.GEMS_DIAMOND) - .trick(Psi.location(LibPieceNames.TRICK_GREATER_INFUSION)) - .cad(ModItems.cadAssemblyPsimetal).build(consumer); - - TrickRecipeBuilder builder = TrickRecipeBuilder.of(ModItems.ebonySubstance) - .input(ItemTags.COALS) - .trick(Psi.location(LibPieceNames.TRICK_EBONY_IVORY)) - .cad(ModItems.cadAssemblyPsimetal); - dimension(builder, consumer, ForgeRegistries.ITEMS.getKey(ModItems.ebonySubstance), Level.END); - - builder = TrickRecipeBuilder.of(ModItems.ivorySubstance) - .input(Tags.Items.GEMS_QUARTZ) - .trick(Psi.location(LibPieceNames.TRICK_EBONY_IVORY)) - .cad(ModItems.cadAssemblyPsimetal); - dimension(builder, consumer, ForgeRegistries.ITEMS.getKey(ModItems.ivorySubstance), Level.END); - } - - public static void dimension(TrickRecipeBuilder builder, Consumer parent, - ResourceLocation id, ResourceKey dimensionKey) { - parent.accept(new DimensionResult(id, builder, dimensionKey)); - } - - public static class DimensionResult extends TrickRecipeBuilder.Result { - private final ResourceKey dimensionId; - - protected DimensionResult(ResourceLocation id, TrickRecipeBuilder builder, ResourceKey type) { - super(id, builder); - this.dimensionId = type; - } - - @Override - public void serializeRecipeData(@Nonnull JsonObject json) { - super.serializeRecipeData(json); - json.addProperty("dimension", dimensionId.location().toString()); - } - - @Nonnull - @Override - public RecipeSerializer getType() { - return DimensionTrickRecipe.SERIALIZER; - } - } -} diff --git a/src/main/resources/data/psi/damage_type/psi_overload.json b/src/main/resources/data/psi/damage_type/psi_overload.json new file mode 100644 index 000000000..15989d374 --- /dev/null +++ b/src/main/resources/data/psi/damage_type/psi_overload.json @@ -0,0 +1,5 @@ +{ + "exhaustion": 0.0, + "message_id": "psi_overload", + "scaling": "when_caused_by_living_non_player" + } \ No newline at end of file